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 构建工具 35.0.0 35.0.0 安装配置 SDK 构建工具。
NDK 不适用 27.0.12077973 安装配置其他版本的 NDK。
JDK 17 17 如需了解详情,请参阅设置 JDK 版本

已修复问题

Android Gradle 插件 8.9.0

已修复问题
Android Gradle 插件
当 GMD 设置任务因磁盘空间不足而失败时,提供可操作的错误消息
com.android.settings 插件无法识别 targetSdk
无用的错误消息:“compileSdkVersion 未指定。请将其添加到 build.gradle”
“构建”菜单中缺少“清理构建”
或许可以让 AGP 的内置 Kotlin 支持自动添加 kotlin stdlib 依赖项
更新 shouldConfigureKotlinPlatformAttribute 以处理内置 Kotlin 支持
在 `checkTestedAppObfuscationRelease` 的错误消息中提供 kotlin gradle 语法
可改进未解析依赖项导致的融合库错误
gradle.properties 中的系统属性未传递给单独进程中的 R8 Gradle Worker
将 BuiltArtifact.outputFile 设为 File 类型
未在融合库上提供命名空间,导致错误消息不够好
AGP 7.1.0-alpha08 中的 lint 选项不允许输出到 stdout
Android Gradle 插件:Variant 应暴露源集名称
配置缓存对 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 失败并出现 InstantiationException,lint 堆栈跟踪中没有异常消息
误报 lint 检查 android.permission.SCHEDULE_EXACT_ALARM 只授予系统应用
StringFormatInvalid 检查应应用于 Compose 的 stringResource 方法
RequiresFeature 注解对 Kotlin 文件不起作用
kotlin android.os.Handler removeCallbacks Runnable
使用位移常量时,WrongConstant lint 对定义而非使用给出警告
WrongConstant lint 出现两次
API 26 以下版本使用不受支持的 Java nio API 导致的运行时异常(无 lint 错误)
即使是测试中的私有辅助方法,Lint 也阻止使用 RequiresApi
在 Android Studio 中使用 .hasRoute(Route::class) 时,K2 模式会抛出 RestrictedApi 警告
Lint 建议将测试中的 @RequiresExtension 替换为 @SdkSuppress,但 @SdkSuppress 不支持 SDK 扩展
当 FrameLayout 与 fitSystemWindows 配合使用以包裹需要自定义内边距的子 RelativeLayout 时,Lint 错误地报告了不必要的嵌套布局。
CoarseFineLocation lint 规则未考虑 maxSdkVersion 属性
AppLinkSplitToWebAndCustom 在 lint 8.7.3 中是 UnknownIssue
Lint 检查 StringEscapeDetector 在 "\\ " 上崩溃
密封接口上的 `@Parcelize` 注解出现错误的 lint 警告
编辑 kotlin 文本时,AS 2024.3.1.4 间歇性挂起。
Lint 集成
构建应用 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
在生成类文件时,分析 allocation site 的先写后读属性会遇到错误
版本 8.6.*、8.7.*、8.8.0 的 R8 代码压缩器中的 Java SPI 问题

Android Gradle 插件 8.9.2

已修复问题
代码压缩器 (R8)
AGP 8.9 中的资源代码压缩问题导致动态功能模块中资源丢失
class init 中安全类型转换导致的 ClassCastException
无法调用 com.android.tools.r8.internal.H5.x()