From f3f634f0104eef688ef2f53f07edc5e4ff08065f Mon Sep 17 00:00:00 2001 From: Connor Tumbleson Date: Wed, 24 Apr 2019 18:04:24 -0400 Subject: [PATCH 1/2] fix: add SDK_Q (test) value of 10,000 --- .../src/main/java/brut/androlib/res/AndrolibResources.java | 2 ++ .../src/main/java/brut/androlib/res/data/ResConfigFlags.java | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java index b4c3d44a..da46d403 100644 --- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java +++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/AndrolibResources.java @@ -633,6 +633,8 @@ final public class AndrolibResources { return ResConfigFlags.SDK_OREO; case "P": return ResConfigFlags.SDK_P; + case "Q": + return ResConfigFlags.SDK_Q; default: return Integer.parseInt(sdkVersion); } diff --git a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResConfigFlags.java b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResConfigFlags.java index 0b5c7a9a..5ee08640 100644 --- a/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResConfigFlags.java +++ b/brut.apktool/apktool-lib/src/main/java/brut/androlib/res/data/ResConfigFlags.java @@ -538,6 +538,10 @@ public class ResConfigFlags { public final static byte SDK_OREO_MR1 = 27; public final static byte SDK_P = 28; + // AOSP has this as 10,000 for dev purposes. + // platform_frameworks_base/commit/ad5b4ba2a2dda066dbefec4195b86747e3d7d225#diff-b2b93844110603a7b050476c83c1ee3a + public final static int SDK_Q = 10000; + public final static byte ORIENTATION_ANY = 0; public final static byte ORIENTATION_PORT = 1; public final static byte ORIENTATION_LAND = 2; From 95fe0f3f0235dda076b7e7535867326f8e2af3f6 Mon Sep 17 00:00:00 2001 From: Connor Tumbleson Date: Wed, 24 Apr 2019 18:04:40 -0400 Subject: [PATCH 2/2] test: assert SDK_Q works with insane test value (10,000) --- .../androlib/androlib/InvalidSdkBoundingTest.java | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/brut.apktool/apktool-lib/src/test/java/brut/androlib/androlib/InvalidSdkBoundingTest.java b/brut.apktool/apktool-lib/src/test/java/brut/androlib/androlib/InvalidSdkBoundingTest.java index c5f888b2..f45c4855 100644 --- a/brut.apktool/apktool-lib/src/test/java/brut/androlib/androlib/InvalidSdkBoundingTest.java +++ b/brut.apktool/apktool-lib/src/test/java/brut/androlib/androlib/InvalidSdkBoundingTest.java @@ -86,4 +86,15 @@ public class InvalidSdkBoundingTest extends BaseTest { androlibResources.setSdkInfo(sdkInfo); assertEquals("26", androlibResources.checkTargetSdkVersionBounds()); } + + @Test + public void checkForSdkQInsaneTestValue() { + AndrolibResources androlibResources = new AndrolibResources(); + + Map sdkInfo = new LinkedHashMap<>(); + sdkInfo.put("targetSdkVersion", "Q"); + + androlibResources.setSdkInfo(sdkInfo); + assertEquals("10000", androlibResources.checkTargetSdkVersionBounds()); + } } \ No newline at end of file