Android Gradle 插件 7.2.0(2022 年 5 月)
<p>Android Gradle plugin 7.2.0 is a major release that includes a variety of
new features and improvements.</p>
<div class="android-updates-box">
<b>7.2.2 (August 2022)</b>
<p>This minor update corresponds to the release of Android Studio Chipmunk
Patch 2 and includes the following bug fixes:</p>
<ul>
<li><a href="https://issuetracker.google.com/issues/232438924">Issue #232438924</a>: AndroidGradlePlugin version 7.2 breaks transform API when used along with ASM API</li>
<li><a href="https://issuetracker.google.com/issues/231037948">Issue #231037948</a>: AGP 7.2.0-rc01 :buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException</li>
</ul>
<b>7.2.1 (May 2022)</b>
<p>
This minor update corresponds to the release of Android Studio Chipmunk
Patch 1 and includes the following bug fixes:</p>
<ul>
<li><a href="https://issuetracker.google.com/issues/230361284">Issue #230361284</a>: bundletool does not package baseline profiles correctly</li>
</ul>
<p>
To see the other bug fixes included in this release, see the
<a href="/studio/releases#patch-releases">Android Studio Chipmunk Patch 1
release notes</a>.
</p>
</div>
兼容性
最低版本 | 默认版本 | 备注 |
---|---|---|
Gradle | 7.3.3 | 7.3.3 |
SDK Build Tools | 30.0.3 | 30.0.3 |
NDK | 不适用 | 21.4.7075529 |
JDK | 11 | 11 |
Build Analyzer 中的 Jetifier 警告和检查
现在,如果项目的 gradle.properties
文件包含 android.enableJetifier=true
,Build Analyzer 会显示警告。该标志是在之前的 Android Studio 版本中引入的,旨在为不能原生支持 AndroidX 的库启用 AndroidX。不过,库生态系统大多已经变为能够原生支持 AndroidX,因此您的项目可能不再需要 Jetifier 标志了。另外,该标志可能会降低 build 性能。如果您看到此警告,可在 Build Analyzer 中运行检查,以确认能否移除该标志。
支持测试固件
从 Android Studio Chipmunk Beta 1 开始,Android Studio 支持 Android 和 Java 测试固件。如需详细了解测试固件功能以及如何在 Java 项目中使用该功能,请参阅与如何使用测试固件{:.external}相关的 Gradle 指南。
如需在 Android 库模块中启用测试固件,请将以下代码添加到库级 build.gradle
文件中:
android {
testFixtures {
enable true
// enable testFixtures's android resources (disabled by default)
// androidResources true
}
}
默认情况下,如果您发布库,则会同时发布测试固件 AAR 和主库。Gradle 模块元数据文件将包含 Gradle 的信息,以便在请求 testFixtures
组件时能够使用正确的工件。
如需停止在发布变体中发布库的测试固件 AAR,请将以下代码添加到库级 build.gradle
文件中:
afterEvaluate {
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseApiPublication) { skip() }
components.release.withVariantsFromConfiguration(
configurations.releaseTestFixturesVariantReleaseRuntimePublication) { skip() }
}
如需使用已发布 Android 库的测试固件 AAR,您可以使用 Gradle 的辅助方法 testFixtures()
。
dependencies {
testImplementation testFixtures('com.example.company:publishedLib:1.0')
}
默认情况下,lint 会分析测试固件来源。您可以对 lint 进行配置,指示其忽略测试固件来源,具体代码如下所示:
android {
lint {
ignoreTestFixturesSources true
}
}
不支持重复的内容根
从 AGP 7.2 开始,您无法在多个源代码集之间共享同一个源目录。例如,您不能在单元测试和插桩测试中使用相同的测试源。如需了解详情,请参阅更改默认源代码集配置。