Loading Android.bp +2 −2 Original line number Diff line number Diff line Loading @@ -314,7 +314,7 @@ java_defaults { exclude_srcs: [ // See comment on framework-atb-backward-compatibility module below "core/java/android/content/pm/parsing/library/AndroidTestBaseUpdater.java", "core/java/android/content/pm/AndroidTestBaseUpdater.java", ], sdk_version: "core_platform", Loading Loading @@ -447,7 +447,7 @@ java_library { name: "framework-atb-backward-compatibility", installable: true, srcs: [ "core/java/android/content/pm/parsing/library/AndroidTestBaseUpdater.java", "core/java/android/content/pm/AndroidTestBaseUpdater.java", ], } Loading config/preloaded-classes +6 −6 Original line number Diff line number Diff line Loading @@ -877,7 +877,7 @@ android.content.pm.-$$Lambda$jpya2qgMDDEok2GAoKRDqPM5lIE android.content.pm.ActivityInfo$1 android.content.pm.ActivityInfo$WindowLayout android.content.pm.ActivityInfo android.content.pm.parsing.library.AndroidHidlUpdater android.content.pm.AndroidHidlUpdater android.content.pm.ApplicationInfo$1 android.content.pm.ApplicationInfo android.content.pm.BaseParceledListSlice Loading Loading @@ -921,10 +921,10 @@ android.content.pm.LauncherApps$1 android.content.pm.LauncherApps android.content.pm.ModuleInfo$1 android.content.pm.ModuleInfo android.content.pm.parsing.library.OrgApacheHttpLegacyUpdater android.content.pm.parsing.library.PackageBackwardCompatibility$AndroidTestRunnerSplitUpdater android.content.pm.parsing.library.PackageBackwardCompatibility$RemoveUnnecessaryAndroidTestBaseLibrary android.content.pm.parsing.library.PackageBackwardCompatibility android.content.pm.OrgApacheHttpLegacyUpdater android.content.pm.PackageBackwardCompatibility$AndroidTestRunnerSplitUpdater android.content.pm.PackageBackwardCompatibility$RemoveUnnecessaryAndroidTestBaseLibrary android.content.pm.PackageBackwardCompatibility android.content.pm.PackageInfo$1 android.content.pm.PackageInfo android.content.pm.PackageInstaller$Session Loading Loading @@ -959,7 +959,7 @@ android.content.pm.PackageParser$SigningDetails$1 android.content.pm.PackageParser$SigningDetails android.content.pm.PackageParser$SplitNameComparator android.content.pm.PackageParser android.content.pm.parsing.library.PackageSharedLibraryUpdater android.content.pm.PackageSharedLibraryUpdater android.content.pm.PackageStats$1 android.content.pm.PackageStats android.content.pm.PackageUserState Loading core/java/android/content/pm/ActivityInfo.java +1 −2 Original line number Diff line number Diff line Loading @@ -1379,8 +1379,7 @@ public class ActivityInfo extends ComponentInfo implements Parcelable { this.minHeight = minHeight; } /** @hide */ public WindowLayout(Parcel source) { WindowLayout(Parcel source) { width = source.readInt(); widthFraction = source.readFloat(); height = source.readInt(); Loading core/java/android/content/pm/parsing/library/AndroidHidlUpdater.java→core/java/android/content/pm/AndroidHidlUpdater.java +14 −12 Original line number Diff line number Diff line /* * Copyright (C) 2019 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. Loading @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm.parsing.library; package android.content.pm; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_HIDL_BASE; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_HIDL_MANAGER; import static android.content.pm.SharedLibraryNames.ANDROID_HIDL_BASE; import static android.content.pm.SharedLibraryNames.ANDROID_HIDL_MANAGER; import android.content.pm.parsing.ParsedPackage; import android.content.pm.PackageParser.Package; import android.os.Build; import com.android.internal.annotations.VisibleForTesting; Loading @@ -33,18 +33,20 @@ import com.android.internal.annotations.VisibleForTesting; public class AndroidHidlUpdater extends PackageSharedLibraryUpdater { @Override public void updatePackage(ParsedPackage parsedPackage) { public void updatePackage(Package pkg) { ApplicationInfo info = pkg.applicationInfo; // This was the default <= P and is maintained for backwards compatibility. boolean isLegacy = parsedPackage.getTargetSdkVersion() <= Build.VERSION_CODES.P; boolean isLegacy = info.targetSdkVersion <= Build.VERSION_CODES.P; // Only system apps use these libraries boolean isSystem = parsedPackage.isSystemApp() || parsedPackage.isUpdatedSystemApp(); boolean isSystem = info.isSystemApp() || info.isUpdatedSystemApp(); if (isLegacy && isSystem) { prefixRequiredLibrary(parsedPackage, ANDROID_HIDL_BASE); prefixRequiredLibrary(parsedPackage, ANDROID_HIDL_MANAGER); prefixRequiredLibrary(pkg, ANDROID_HIDL_BASE); prefixRequiredLibrary(pkg, ANDROID_HIDL_MANAGER); } else { removeLibrary(parsedPackage, ANDROID_HIDL_BASE); removeLibrary(parsedPackage, ANDROID_HIDL_MANAGER); removeLibrary(pkg, ANDROID_HIDL_BASE); removeLibrary(pkg, ANDROID_HIDL_MANAGER); } } } core/java/android/content/pm/parsing/library/AndroidTestBaseUpdater.java→core/java/android/content/pm/AndroidTestBaseUpdater.java +12 −12 Original line number Diff line number Diff line /* * Copyright (C) 2019 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. Loading @@ -13,13 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm.parsing.library; package android.content.pm; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_TEST_BASE; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_TEST_RUNNER; import static android.content.pm.SharedLibraryNames.ANDROID_TEST_BASE; import static android.content.pm.SharedLibraryNames.ANDROID_TEST_RUNNER; import android.content.pm.parsing.AndroidPackage; import android.content.pm.parsing.ParsedPackage; import android.content.pm.PackageParser.Package; import android.os.Build; import com.android.internal.annotations.VisibleForTesting; Loading @@ -39,22 +38,23 @@ import com.android.internal.annotations.VisibleForTesting; @VisibleForTesting public class AndroidTestBaseUpdater extends PackageSharedLibraryUpdater { private static boolean apkTargetsApiLevelLessThanOrEqualToQ(AndroidPackage pkg) { return pkg.getTargetSdkVersion() <= Build.VERSION_CODES.Q; private static boolean apkTargetsApiLevelLessThanOrEqualToQ(Package pkg) { int targetSdkVersion = pkg.applicationInfo.targetSdkVersion; return targetSdkVersion <= Build.VERSION_CODES.Q; } @Override public void updatePackage(ParsedPackage parsedPackage) { public void updatePackage(Package pkg) { // Packages targeted at <= Q expect the classes in the android.test.base library // to be accessible so this maintains backward compatibility by adding the // android.test.base library to those packages. if (apkTargetsApiLevelLessThanOrEqualToQ(parsedPackage)) { prefixRequiredLibrary(parsedPackage, ANDROID_TEST_BASE); if (apkTargetsApiLevelLessThanOrEqualToQ(pkg)) { prefixRequiredLibrary(pkg, ANDROID_TEST_BASE); } else { // If a package already depends on android.test.runner then add a dependency on // android.test.base because android.test.runner depends on classes from the // android.test.base library. prefixImplicitDependency(parsedPackage, ANDROID_TEST_RUNNER, ANDROID_TEST_BASE); prefixImplicitDependency(pkg, ANDROID_TEST_RUNNER, ANDROID_TEST_BASE); } } } Loading
Android.bp +2 −2 Original line number Diff line number Diff line Loading @@ -314,7 +314,7 @@ java_defaults { exclude_srcs: [ // See comment on framework-atb-backward-compatibility module below "core/java/android/content/pm/parsing/library/AndroidTestBaseUpdater.java", "core/java/android/content/pm/AndroidTestBaseUpdater.java", ], sdk_version: "core_platform", Loading Loading @@ -447,7 +447,7 @@ java_library { name: "framework-atb-backward-compatibility", installable: true, srcs: [ "core/java/android/content/pm/parsing/library/AndroidTestBaseUpdater.java", "core/java/android/content/pm/AndroidTestBaseUpdater.java", ], } Loading
config/preloaded-classes +6 −6 Original line number Diff line number Diff line Loading @@ -877,7 +877,7 @@ android.content.pm.-$$Lambda$jpya2qgMDDEok2GAoKRDqPM5lIE android.content.pm.ActivityInfo$1 android.content.pm.ActivityInfo$WindowLayout android.content.pm.ActivityInfo android.content.pm.parsing.library.AndroidHidlUpdater android.content.pm.AndroidHidlUpdater android.content.pm.ApplicationInfo$1 android.content.pm.ApplicationInfo android.content.pm.BaseParceledListSlice Loading Loading @@ -921,10 +921,10 @@ android.content.pm.LauncherApps$1 android.content.pm.LauncherApps android.content.pm.ModuleInfo$1 android.content.pm.ModuleInfo android.content.pm.parsing.library.OrgApacheHttpLegacyUpdater android.content.pm.parsing.library.PackageBackwardCompatibility$AndroidTestRunnerSplitUpdater android.content.pm.parsing.library.PackageBackwardCompatibility$RemoveUnnecessaryAndroidTestBaseLibrary android.content.pm.parsing.library.PackageBackwardCompatibility android.content.pm.OrgApacheHttpLegacyUpdater android.content.pm.PackageBackwardCompatibility$AndroidTestRunnerSplitUpdater android.content.pm.PackageBackwardCompatibility$RemoveUnnecessaryAndroidTestBaseLibrary android.content.pm.PackageBackwardCompatibility android.content.pm.PackageInfo$1 android.content.pm.PackageInfo android.content.pm.PackageInstaller$Session Loading Loading @@ -959,7 +959,7 @@ android.content.pm.PackageParser$SigningDetails$1 android.content.pm.PackageParser$SigningDetails android.content.pm.PackageParser$SplitNameComparator android.content.pm.PackageParser android.content.pm.parsing.library.PackageSharedLibraryUpdater android.content.pm.PackageSharedLibraryUpdater android.content.pm.PackageStats$1 android.content.pm.PackageStats android.content.pm.PackageUserState Loading
core/java/android/content/pm/ActivityInfo.java +1 −2 Original line number Diff line number Diff line Loading @@ -1379,8 +1379,7 @@ public class ActivityInfo extends ComponentInfo implements Parcelable { this.minHeight = minHeight; } /** @hide */ public WindowLayout(Parcel source) { WindowLayout(Parcel source) { width = source.readInt(); widthFraction = source.readFloat(); height = source.readInt(); Loading
core/java/android/content/pm/parsing/library/AndroidHidlUpdater.java→core/java/android/content/pm/AndroidHidlUpdater.java +14 −12 Original line number Diff line number Diff line /* * Copyright (C) 2019 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. Loading @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm.parsing.library; package android.content.pm; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_HIDL_BASE; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_HIDL_MANAGER; import static android.content.pm.SharedLibraryNames.ANDROID_HIDL_BASE; import static android.content.pm.SharedLibraryNames.ANDROID_HIDL_MANAGER; import android.content.pm.parsing.ParsedPackage; import android.content.pm.PackageParser.Package; import android.os.Build; import com.android.internal.annotations.VisibleForTesting; Loading @@ -33,18 +33,20 @@ import com.android.internal.annotations.VisibleForTesting; public class AndroidHidlUpdater extends PackageSharedLibraryUpdater { @Override public void updatePackage(ParsedPackage parsedPackage) { public void updatePackage(Package pkg) { ApplicationInfo info = pkg.applicationInfo; // This was the default <= P and is maintained for backwards compatibility. boolean isLegacy = parsedPackage.getTargetSdkVersion() <= Build.VERSION_CODES.P; boolean isLegacy = info.targetSdkVersion <= Build.VERSION_CODES.P; // Only system apps use these libraries boolean isSystem = parsedPackage.isSystemApp() || parsedPackage.isUpdatedSystemApp(); boolean isSystem = info.isSystemApp() || info.isUpdatedSystemApp(); if (isLegacy && isSystem) { prefixRequiredLibrary(parsedPackage, ANDROID_HIDL_BASE); prefixRequiredLibrary(parsedPackage, ANDROID_HIDL_MANAGER); prefixRequiredLibrary(pkg, ANDROID_HIDL_BASE); prefixRequiredLibrary(pkg, ANDROID_HIDL_MANAGER); } else { removeLibrary(parsedPackage, ANDROID_HIDL_BASE); removeLibrary(parsedPackage, ANDROID_HIDL_MANAGER); removeLibrary(pkg, ANDROID_HIDL_BASE); removeLibrary(pkg, ANDROID_HIDL_MANAGER); } } }
core/java/android/content/pm/parsing/library/AndroidTestBaseUpdater.java→core/java/android/content/pm/AndroidTestBaseUpdater.java +12 −12 Original line number Diff line number Diff line /* * Copyright (C) 2019 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. Loading @@ -13,13 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ package android.content.pm.parsing.library; package android.content.pm; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_TEST_BASE; import static android.content.pm.parsing.library.SharedLibraryNames.ANDROID_TEST_RUNNER; import static android.content.pm.SharedLibraryNames.ANDROID_TEST_BASE; import static android.content.pm.SharedLibraryNames.ANDROID_TEST_RUNNER; import android.content.pm.parsing.AndroidPackage; import android.content.pm.parsing.ParsedPackage; import android.content.pm.PackageParser.Package; import android.os.Build; import com.android.internal.annotations.VisibleForTesting; Loading @@ -39,22 +38,23 @@ import com.android.internal.annotations.VisibleForTesting; @VisibleForTesting public class AndroidTestBaseUpdater extends PackageSharedLibraryUpdater { private static boolean apkTargetsApiLevelLessThanOrEqualToQ(AndroidPackage pkg) { return pkg.getTargetSdkVersion() <= Build.VERSION_CODES.Q; private static boolean apkTargetsApiLevelLessThanOrEqualToQ(Package pkg) { int targetSdkVersion = pkg.applicationInfo.targetSdkVersion; return targetSdkVersion <= Build.VERSION_CODES.Q; } @Override public void updatePackage(ParsedPackage parsedPackage) { public void updatePackage(Package pkg) { // Packages targeted at <= Q expect the classes in the android.test.base library // to be accessible so this maintains backward compatibility by adding the // android.test.base library to those packages. if (apkTargetsApiLevelLessThanOrEqualToQ(parsedPackage)) { prefixRequiredLibrary(parsedPackage, ANDROID_TEST_BASE); if (apkTargetsApiLevelLessThanOrEqualToQ(pkg)) { prefixRequiredLibrary(pkg, ANDROID_TEST_BASE); } else { // If a package already depends on android.test.runner then add a dependency on // android.test.base because android.test.runner depends on classes from the // android.test.base library. prefixImplicitDependency(parsedPackage, ANDROID_TEST_RUNNER, ANDROID_TEST_BASE); prefixImplicitDependency(pkg, ANDROID_TEST_RUNNER, ANDROID_TEST_BASE); } } }