Android Gradle 插件 8.8.0(2025 年 1 月)
Android Gradle 插件 8.8.0 是一个主要版本,包含各种新功能和改进。
兼容性
Android Gradle 插件 8.8 支持的最高 API 级别为 API 级别 35。以下是其他兼容性信息:
|
最低版本 |
默认版本 |
备注 |
Gradle |
8.10.2 |
8.10.2 |
如需了解详情,请参阅更新 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.8.0
已修复的问题 |
Android Gradle 插件 |
考虑将 JacocoTransform 的输入类型注释为 @Classpath
|
com.android.build.api.variant.GeneratesApk 应公开 minSdk
|
com.android.settings 插件无法识别 targetSdk
|
SourceDirectories.addGeneratedSourceDirectory 对多个变体不友好
|
实现用于停用 AGP 最低版本检查的标志
|
AGP 在配置 Kotlin 编译器选项时存在令人困惑的交互
|
AGP 应在 com.android.test 项目中为目标项目 APK 公开 BuiltArtifactLoader
|
[AGP] 延迟 SdkComponents.ndkDirectory 提供程序无法生成值,但急切的 android.ndkDirectory API 可正常运行
|
构建选项:添加新的“构建运行配置”选项并将其设为默认选项
|
使用 android.enableBuildConfigAsBytecode=true 时,无法在单元测试中解析 BuildConfig
|
从 Bundle 生成的 APK 未考虑 Privacy Sandbox 支持
|
com.android.settings 插件无法识别 targetSdk
|
|
Dexer (D8) |
Desugar 库 2.1.0 不适用于 AGP 8.5.2
|
|
lint |
KtAnalysisSessionProvider 与 8.7.0-alpha04 中引入的 lint 检查不兼容
|
使用 PackageManager.ResolveInfoFlags.of 和 Kotlin 时出现“假正例”WrongConstant
|
设置 http 或 https intent-filter 方案时出现“必须至少指定一个主机”lint 错误
|
在更多情况下处理 UnknownNullness lint 的类型使用注释
|
AGP 8.6.1:回归 - 在 Kotlin 中使用 @LongDef 内的 [Int].toLong() 时出现 WrongConstant lint 失败
|
AGP 8.7.0 - Lint 在 NavOptionsBuilder.popUpTo 上出现 RestrictedApi 假正例
|
WrongConstant lint 出现两次
|
Android Studio 未捕获“MonochromeLauncherIcon: Monochrome icon is not defined”警告
|
AbstractAnnotationDetector 检查错误的重载函数/构造函数
|
Lint ImportAliasTestMode 不会为顶级函数创建导入别名
|
WrongConstant lint 出现两次
|
AGP 8.8 中新增了 ObsoleteSdkInt lint 警告
|
误报 lint 检查:android.permission.SCHEDULE_EXACT_ALARM 仅授予系统应用
|
在 Android Studio 中使用 .hasRoute(Route::class) 时,K2 模式会抛出 RestrictedApi 警告
|
|
lint 集成 |
评估后未找到 Lint 变体任务
|
导入包含实现文件的 AAR 文件时,Lint 失败
|
|
Android Gradle 插件 8.8.1
已修复的问题 |
Dexer (D8) |
|
缩减器 (R8) |
java.lang.AbstractMethodError: Receiver class [...]$$Lambda$[...] does not define or inherit an implementation of the resolved method [...] of interface [...]
|
与记录 DexCallSite 相关的 Enqueuer 中的 NPE
|
R8 8.7.18 在调用 job?.cancel 时导致运行时 null 指针异常
|
java.lang.NoClassDefFoundError:无法解析 Lkotlin/LazyThreadSafetyMode
|
Monzo 似乎在树状结构摇动中花费了过多的时间
|
AGP 8.8 无法构建发布版本:R8:java.lang.NullPointerException:无法读取字段“b”,因为“com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)”的返回值是 null`
|
|
Android Gradle 插件 8.8.2
已修复的问题 |
Android Gradle 插件 |
初始化脚本“C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle”第 162 行
|
|
缩减器 (R8) |
升级到 AGP 8.8 后,Gson ProGuard 无法正常运行
|
java.lang.VerifyError: Verifier rejected class
|
使用 AGP 8.10.0-alpha04 中包含的 R8 进行压缩时,Leanback 崩溃
|
|
本页面上的内容和代码示例受内容许可部分所述许可的限制。Java 和 OpenJDK 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-13。
[null,null,["最后更新时间 (UTC):2025-07-13。"],[],[]]