Android Gradle 插件 9.6.0

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

兼容性

Android Gradle 插件 9.6 支持的最高 API 级别为 API 级别 37。 以下是更多兼容性信息:

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

插桩测试的设备端代码覆盖率

AGP 9.6.0-alpha01 为插桩测试添加了设备端代码覆盖率。AGP 不会在构建时使用 JaCoCo 对应用的类进行插桩,而是会将覆盖率代理添加到测试 APK 中,并且该代理会在测试运行时对测试设备上的类进行插桩。这样,系统便会从启用了 enableAndroidTestCoverage 的 build 中移除 JaCoCo 插桩步骤,并使覆盖率跟踪代码不包含在应用的 APK 中。您运行相同的 create{Variant}AndroidTestCoverageReport 任务,AGP 会在同一位置生成 HTML 和 XML 报告。设备端代码覆盖率需要可调试的应用和搭载 Android 9(API 级别 28)或更高版本的设备。

AGP 会添加与 AGP 版本相同的覆盖率代理库 com.android.tools.test:coverage-agent。如需了解详情,请参阅查看代码覆盖率报告(使用设备端代理)。

修复的问题

Android Gradle 插件 9.6.0-alpha02

已修复的问题
Android Gradle 插件
为 R8 任务读取了不安全的系统属性

Android Gradle 插件 9.6.0-alpha01

已修复的问题
Android Gradle 插件
由于最近的 aapt2 更改,shrinkresources 不适用于库 APK
lint
Lint ThreadConstraint 部分结果在不同 JVM 之间不确定,这会破坏 lintAnalyze 的 build 缓存