aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Żenczykowski <maze@google.com>2023-04-21 13:27:34 +0000
committerCherrypicker Worker <android-build-cherrypicker-worker@google.com>2023-05-25 18:32:02 +0000
commit17b65afab8d23d1ac0f59d125f998ac2b03ce773 (patch)
treefedef34816b8d52fe00a379e7ddf3e6a8e1603cf
parent6417db54ca4cc55577a410f84e58e77a6a9585ae (diff)
downloadmodules-utils-17b65afab8d23d1ac0f59d125f998ac2b03ce773.tar.gz
add isAtLeastV()android14-dev
Basing this on the state from before: https://android-review.googlesource.com/c/platform/frameworks/libs/modules-utils/+/2535803 but with U/UpsideDownCake replaced with V/VanillaIceCream I assume we don't yet know if V will be 35 or higher. Bug: 277813952 Test: TreeHugger Signed-off-by: Maciej Żenczykowski <maze@google.com> (cherry picked from https://android-review.googlesource.com/q/commit:600ca498ae054d2a6919378d59c8da471748edc1) Merged-In: Ie2fe7b0bc8b82f8049e51ac7f85b0d9722e9f5ed Change-Id: Ie2fe7b0bc8b82f8049e51ac7f85b0d9722e9f5ed
-rw-r--r--build/include/android-modules-utils/sdk_level.h6
-rw-r--r--java/com/android/modules/utils/build/SdkLevel.java6
-rw-r--r--java/com/android/modules/utils/build/testing/DeviceSdkLevel.java18
3 files changed, 20 insertions, 10 deletions
diff --git a/build/include/android-modules-utils/sdk_level.h b/build/include/android-modules-utils/sdk_level.h
index bbb6b46..bbb1cfb 100644
--- a/build/include/android-modules-utils/sdk_level.h
+++ b/build/include/android-modules-utils/sdk_level.h
@@ -60,6 +60,12 @@ inline bool IsAtLeastU() {
detail::IsAtLeastPreReleaseCodename("U"));
}
+// Checks if the device is running on release version of Android V or newer.
+inline bool IsAtLeastV() {
+ return android_get_device_api_level() >= 34 &&
+ detail::IsAtLeastPreReleaseCodename("VanillaIceCream");
+}
+
} // namespace sdklevel
} // namespace modules
} // namespace android
diff --git a/java/com/android/modules/utils/build/SdkLevel.java b/java/com/android/modules/utils/build/SdkLevel.java
index 4612785..42a1e4f 100644
--- a/java/com/android/modules/utils/build/SdkLevel.java
+++ b/java/com/android/modules/utils/build/SdkLevel.java
@@ -64,6 +64,12 @@ public final class SdkLevel {
(SDK_INT == 33 && isAtLeastPreReleaseCodename("UpsideDownCake"));
}
+ /** Checks if the device is running on a pre-release version of Android V or newer */
+ @ChecksSdkIntAtLeast(codename = "VanillaIceCream")
+ public static boolean isAtLeastV() {
+ return SDK_INT >= 34 && isAtLeastPreReleaseCodename("VanillaIceCream");
+ }
+
private static boolean isAtLeastPreReleaseCodename(@NonNull String codename) {
// Special case "REL", which means the build is not a pre-release build.
if ("REL".equals(CODENAME)) {
diff --git a/java/com/android/modules/utils/build/testing/DeviceSdkLevel.java b/java/com/android/modules/utils/build/testing/DeviceSdkLevel.java
index 6e32e44..041d6a5 100644
--- a/java/com/android/modules/utils/build/testing/DeviceSdkLevel.java
+++ b/java/com/android/modules/utils/build/testing/DeviceSdkLevel.java
@@ -44,22 +44,20 @@ public final class DeviceSdkLevel {
return device.getApiLevel() >= 31;
}
- /**
- * Checks if the device is running on a pre-release version of Android T or a release version of
- * Android T or newer.
- */
+ /** Checks if the device is running on a release version of Android T or newer. */
public boolean isDeviceAtLeastT() throws DeviceNotAvailableException {
return device.getApiLevel() >= 33;
}
- /**
- * Checks if the device is running on a pre-release or release version of Android
- * UpsideDownCake or newer
- */
+ /** Checks if the device is running on a (pre-)release version of Android U or newer. */
public boolean isDeviceAtLeastU() throws DeviceNotAvailableException {
return device.getApiLevel() >= 34 ||
- (device.getApiLevel() == 33 &&
- isDeviceAtLeastPreReleaseCodename("UpsideDownCake"));
+ (device.getApiLevel() == 33 && isDeviceAtLeastPreReleaseCodename("UpsideDownCake"));
+ }
+
+ /** Checks if the device is running on a (pre-)release version of Android V or newer. */
+ public boolean isDeviceAtLeastV() throws DeviceNotAvailableException {
+ return device.getApiLevel() >= 34 && isDeviceAtLeastPreReleaseCodename("VanillaIceCream");
}
private boolean isDeviceAtLeastPreReleaseCodename(@NonNull String codename)