diff options
author | Maciej Żenczykowski <maze@google.com> | 2023-04-21 13:27:34 +0000 |
---|---|---|
committer | Cherrypicker Worker <android-build-cherrypicker-worker@google.com> | 2023-05-25 18:32:02 +0000 |
commit | 17b65afab8d23d1ac0f59d125f998ac2b03ce773 (patch) | |
tree | fedef34816b8d52fe00a379e7ddf3e6a8e1603cf | |
parent | 6417db54ca4cc55577a410f84e58e77a6a9585ae (diff) | |
download | modules-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.h | 6 | ||||
-rw-r--r-- | java/com/android/modules/utils/build/SdkLevel.java | 6 | ||||
-rw-r--r-- | java/com/android/modules/utils/build/testing/DeviceSdkLevel.java | 18 |
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) |