2

我正在尝试使用以下代码检查 android 12 API 级别。

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.S)
{
     // Do something for Android 12 and above versions 
}
else
{
    // Do something for phones running an SDK before Android 12
}

但总是在 android 12 beta 设备中运行应用程序时执行 else 部分。这是检查android 12 beta版本的另一种方法吗?

4

2 回答 2

3

要同时检测 Android 12 Beta 版本,您可以Build.VERSION.CODENAME像这样使用:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.S || "S".equals(Build.VERSION.CODENAME)) {
    // Android 12 or Android 12 Beta
}
于 2021-06-11T08:17:54.380 回答
2

BuildCompat.isAtLeastXX(), XX 是你的目标版本。

if (BuildCompat.isAtLeastS()) {
  //Checks if the device is running on a pre-release version of Android S or a release version of Android S or newer.
}

https://developer.android.com/reference/androidx/core/os/BuildCompat#isAtLeastS()

于 2021-09-03T08:50:28.037 回答