From c6be9fe47041743619d7e9ed7cf95e7c9207f825 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Mon, 29 Mar 2021 18:52:29 -0600 Subject: [PATCH] Temporary stop-gap for Chrome target SDK issue. The Chrome team was planning to provide a new prebuilt SDK last week which returned to targeting the official R SDK level, but other challenges prevented them from doing so. They still intend to land an updated prebuilt which targets R, but to unblock testing this change makes that change on their behalf; when we see a very specific Chrome version code we force the target SDK back to R. This code will safely become a no-op during their next prebuilt, which should have a different version code. Bug: 183905675 Test: manual Change-Id: I211e7550f489294f90d8729b518ec9a70a37ec96 --- .../android/content/pm/parsing/ParsingPackageUtils.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/core/java/android/content/pm/parsing/ParsingPackageUtils.java b/core/java/android/content/pm/parsing/ParsingPackageUtils.java index a1ffc0ca53784..2adf266ef4b71 100644 --- a/core/java/android/content/pm/parsing/ParsingPackageUtils.java +++ b/core/java/android/content/pm/parsing/ParsingPackageUtils.java @@ -2799,7 +2799,15 @@ public class ParsingPackageUtils { } } + @SuppressWarnings("AndroidFrameworkCompatChange") private void convertSplitPermissions(ParsingPackage pkg) { + // STOPSHIP(b/183905675): REMOVE THIS TERRIBLE, HORRIBLE, NO GOOD, VERY BAD HACK + if ("com.android.chrome".equals(pkg.getPackageName()) + && pkg.getVersionCode() <= 445500399 + && pkg.getTargetSdkVersion() > Build.VERSION_CODES.R) { + pkg.setTargetSdkVersion(Build.VERSION_CODES.R); + } + final int listSize = mSplitPermissionInfos.size(); for (int is = 0; is < listSize; is++) { final PermissionManager.SplitPermissionInfo spi = mSplitPermissionInfos.get(is);