Android升级版本兼容问题

1、JDK的选择

Android Java API and language features supported
14 (API 34) 17 Core libraries
13 (API 33) 11 Core libraries
12 (API 32) 11 Java API
11 and lower Android versions

https://developer.android.com/build/jdks

The following table lists which version of Gradle is required for each version of the Android Gradle plugin. For the best performance, you should use the latest possible version of both Gradle and the plugin.

Plugin version Minimum required Gradle version
8.4 (alpha) 8.6-rc-1
8.3 (beta) 8.4
8.2 8.2
8.1 8.0
8.0 8.0
7.4 7.5

The following table lists which version of Android Gradle plugin(AGP) is required for each version of Android Studio.

Android Studio version Required AGP version
Iguana - 2023.2.1 3.2-8.3
Hedgehog - 2023.1.1 3.2-8.2
Giraffe - 2022.3.1 3.2-8.1
Flamingo - 2022.2.1 3.2-8.0
Electric Eel - 2022.1.1 3.2-7.4

The minimum versions of Android Studio and AGP are as follows:

API level Minimum Android Studio version Minimum AGP version
34 Hedgehog - 2023.1.1 8.1.1
33 Flamingo - 2022.2.1 7.2

https://developer.android.com/build/releases/gradle-plugin

Make sure to choose a JDK version that is higher than or equal to the JDK versions used by plugins that you use in your Gradle build. To determine the minimum required JDK version for the Android Gradle Plugin (AGP), see the compatibility table in the release notes.

For example, the Android Gradle Plugin version 8.x requires JDK 17. If you try to run a Gradle build that uses it with an earlier version of the JDK, it reports a message like:

An exception occurred applying plugin request [id: 'com.android.application']

Failed to apply plugin 'com.android.internal.application'.

Android Gradle plugin requires Java 17 to run. You are currently using Java 11.

Your current JDK is located in /usr/local/buildtools/java/jdk11

You can try some of the following options:

  • changing the IDE settings.

  • changing the JAVA_HOME environment variable.

  • changing org.gradle.java.home in gradle.properties.

相关推荐
&岁月不待人&1 分钟前
Kotlin by lazy和lateinit的使用及区别
android·开发语言·kotlin
Winston Wood2 小时前
Android Parcelable和Serializable的区别与联系
android·序列化
清风徐来辽2 小时前
Android 项目模型配置管理
android
帅得不敢出门2 小时前
Gradle命令编译Android Studio工程项目并签名
android·ide·android studio·gradlew
problc3 小时前
Flutter中文字体设置指南:打造个性化的应用体验
android·javascript·flutter
帅得不敢出门13 小时前
安卓设备adb执行AT指令控制电话卡
android·adb·sim卡·at指令·电话卡
我又来搬代码了15 小时前
【Android】使用productFlavors构建多个变体
android
德育处主任17 小时前
Mac和安卓手机互传文件(ADB)
android·macos
芦半山17 小时前
Android“引用们”的底层原理
android·java
迃-幵17 小时前
力扣:225 用队列实现栈
android·javascript·leetcode