diff --git a/services/core/java/com/android/server/compat/CompatChange.java b/services/core/java/com/android/server/compat/CompatChange.java index b5846b555747579b4be3028579deb07e8161e1aa..a40dd7919402a8bea2fd71d6bcd084409c00a3e2 100644 --- a/services/core/java/com/android/server/compat/CompatChange.java +++ b/services/core/java/com/android/server/compat/CompatChange.java @@ -252,9 +252,6 @@ public final class CompatChange extends CompatibilityChangeInfo { // If the change is gated by a platform version newer than the one currently installed // on the device, disregard the app's target sdk version. int compareSdk = Math.min(app.targetSdkVersion, buildClassifier.platformTargetSdk()); - if (compareSdk != app.targetSdkVersion) { - compareSdk = app.targetSdkVersion; - } return compareSdk >= getEnableSinceTargetSdk(); } return true; diff --git a/services/tests/servicestests/src/com/android/server/compat/CompatConfigTest.java b/services/tests/servicestests/src/com/android/server/compat/CompatConfigTest.java index b2854ceb1017285c1f75b9664d7fc3ff1a30450a..ef15f60101d498113aee1618bff490f6afe17829 100644 --- a/services/tests/servicestests/src/com/android/server/compat/CompatConfigTest.java +++ b/services/tests/servicestests/src/com/android/server/compat/CompatConfigTest.java @@ -868,6 +868,7 @@ public class CompatConfigTest { + "<compat-change id=\"1234\" name=\"MY_CHANGE1\" enableAfterTargetSdk=\"2\" />" + "<compat-change id=\"1235\" name=\"MY_CHANGE2\" disabled=\"true\" />" + "<compat-change id=\"1236\" name=\"MY_CHANGE3\" />" + + "<compat-change id=\"1237\" name=\"MY_CHANGE4\" enableSinceTargetSdk=\"31\" />" + "</config>"; File dir = createTempDir(); @@ -885,32 +886,12 @@ public class CompatConfigTest { ApplicationInfoBuilder.create().withTargetSdk(5).build())).isFalse(); assertThat(compatConfig.isChangeEnabled(1236L, ApplicationInfoBuilder.create().withTargetSdk(1).build())).isTrue(); - } - - @Test - public void testReadApexConfig() throws IOException { - String configXml = "<config>" - + "<compat-change id=\"1234\" name=\"MY_CHANGE1\" enableAfterTargetSdk=\"2\" />" - + "<compat-change id=\"1235\" name=\"MY_CHANGE2\" disabled=\"true\" />" - + "<compat-change id=\"1236\" name=\"MY_CHANGE3\" />" - + "<compat-change id=\"1237\" name=\"MY_CHANGE4\" enableSinceTargetSdk=\"31\" />" - + "</config>"; - - File dir = createTempDir(); - writeToFile(dir, "platform_compat_config.xml", configXml); - CompatConfig compatConfig = new CompatConfig(mBuildClassifier, mContext); - compatConfig.forceNonDebuggableFinalForTest(false); + assertThat(compatConfig.isChangeEnabled(1237L, + ApplicationInfoBuilder.create().withTargetSdk(31).build())).isFalse(); - compatConfig.initConfigFromLib(dir); + // Force the platform sdk version to be same as enabled target sdk + when(mBuildClassifier.platformTargetSdk()).thenReturn(31); - assertThat(compatConfig.isChangeEnabled(1234L, - ApplicationInfoBuilder.create().withTargetSdk(1).build())).isFalse(); - assertThat(compatConfig.isChangeEnabled(1234L, - ApplicationInfoBuilder.create().withTargetSdk(3).build())).isTrue(); - assertThat(compatConfig.isChangeEnabled(1235L, - ApplicationInfoBuilder.create().withTargetSdk(5).build())).isFalse(); - assertThat(compatConfig.isChangeEnabled(1236L, - ApplicationInfoBuilder.create().withTargetSdk(1).build())).isTrue(); assertThat(compatConfig.isChangeEnabled(1237L, ApplicationInfoBuilder.create().withTargetSdk(31).build())).isTrue(); }