Android Gradle 插件 8.9.0(2025 年 3 月)

Android Gradle 插件 8.9.0 是一个主要版本,包含各种新功能和改进。

兼容性

Android Gradle 插件 8.9 支持的最高 API 级别为 API 级别 35。以下是其他兼容性信息:

最低版本 默认版本 备注
Gradle 8.11.1 8.11.1 如需了解详情,请参阅更新 Gradle
SDK Build Tools 35.0.0 35.0.0 安装配置 SDK Build Tools。
NDK 不适用 27.0.12077973 安装配置其他版本的 NDK。
JDK 17 17 如需了解详情,请参阅设置 JDK 版本

修复的问题

Android Gradle 插件 8.9.0

已修复的问题
Android Gradle 插件
在 GMD 设置任务因磁盘空间不足而失败时,提供可操作的错误消息
com.android.settings 插件无法识别 targetSdk
无用的错误“未指定 compileSdkVersion。请将其添加到 build.gradle 中”
Build 菜单中缺少“Clean build”
或许可以让 AGP 的内置 Kotlin 支持自动添加 Kotlin stdlib 依赖项
更新了 shouldConfigureKotlinPlatformAttribute 以处理内置的 Kotlin 支持
为 `checkTestedAppObfuscationRelease` 的错误消息提供 Kotlin Gradle 语法
当未解决的依赖项可以改进时,融合库错误
gradle.properties 中的系统属性不会传递给单独进程中的 R8 Gradle Worker
将 BuiltArtifact.outputFile 设置为文件类型
未在融合库上提供命名空间时,不会显示合适的错误消息
AGP 7.1.0-alpha08 中的 lint 选项不允许使用 stdout
Android Gradle 插件:变体应公开源集名称
配置缓存对 TERM 环境变量的设置非常敏感
启用统计信息时,AndroidComponentsExtension.addSourceSetConfigurations 会损坏
初始化脚本“C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle”第 162 行
启用统计信息时,AndroidComponentsExtension.addSourceSetConfigurations 会损坏
Dexer (D8)
java.lang.VerifyError: Verifier rejected class: [0x430] copy1 v2<-v264 type=Undefined cat=3
lint
Lint 在运行 Lint Gradle 检查时崩溃
Lint 失败,但 lint 堆栈轨迹中没有 InstantiationException 异常消息
误报 lint 检查:android.permission.SCHEDULE_EXACT_ALARM 仅授予系统应用
StringFormatInvalid 检查应应用于 Compose stringResource 方法
RequiresFeature 注解不适用于 Kotlin 文件
kotlin android.os.Handler removeCallbacks Runnable
针对使用 shift 的常量定义(而非使用)的 WrongConstant lint
WrongConstant lint 出现两次
在 API 26 以下版本中,使用不受支持的 Java nio API 时出现运行时异常(无 lint 错误)
Lint 会阻止在测试中使用 RequiresApi,即使是在私有辅助方法中也是如此
在 Android Studio 中使用 .hasRoute(Route::class) 时,K2 模式会抛出 RestrictedApi 警告
Lint 建议将测试中的 @RequiresExtension 替换为不支持 SDK 扩展的 @SdkSuppress
当 FrameLayout 与 fitSystemWindows 搭配使用以封装需要自定义内边距的子 RelativeLayout 时,Lint 会错误地报告不必要的嵌套布局。
CoarseFineLocation lint 规则未考虑 maxSdkVersion 属性
AppLinkSplitToWebAndCustom 在 lint 8.7.3 中是 UnknownIssue
Lint 检查 StringEscapeDetector 在“\\ ”上崩溃
针对密封接口上的“@Parcelize”注解显示错误的 lint 警告
在编辑 Kotlin 文本时,AS 2024.3.1.4 会间歇性挂起。
lint 集成
构建 app bundle 时,lintVitalRelease 不会自动运行
缩减器 (R8)
升级到 AGP 8.8 后,Gson ProGuard 无法正常运行
java.lang.VerifyError: Verifier rejected class
使用 AGP 8.10.0-alpha04 中包含的 R8 进行压缩时,Leanback 崩溃

Android Gradle 插件 8.9.1

已修复的问题
Dexer (D8)
android.os.Build.VERSION_CODES_FULL 的向后移植对于 Baklava 不正确
缩减器 (R8)
更新到 AGP 8.9.0 后,无法生成签名 APK
在分配位置分析写入前读取属性时,生成类文件时遇到错误
版本 8.6.* 的 R8 缩减器中与 Java SPI 相关的问题,8.7.*、8.8.0

Android Gradle 插件 8.9.2

已修复的问题
缩减器 (R8)
AGP 8.9 中的资源缩减问题导致动态功能模块中缺少资源
类初始化中的安全转换导致的 ClassCastException
无法调用 com.android.tools.r8.internal.H5.x()