Android Gradle 外掛程式 7.2.0 (2022 年 5 月)
Android Gradle 外掛程式 7.2.0 是主要版本,內含多種新功能及改善項目。
這項次要更新配合 Android Studio Chipmunk 修補程式 2 版本,並包含下列錯誤修正項目:
- 問題 #232438924:與 ASM API 搭配使用時,Android Gradle 外掛程式 7.2 版會造成轉換 API 中斷
- 問題 #231037948:AGP 7.2.0-rc01:buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
這項次要更新配合 Android Studio Chipmunk 修補程式 1 版本,並包含下列錯誤修正項目:
- 問題 #230361284:bundletool 無法正確封裝基準設定檔
如要查看此版本的其他修正錯誤,請參閱 Android Studio Chipmunk 修補程式 1 版本資訊。
相容性
最低版本 | 預設版本 | 附註 | |
---|---|---|---|
Gradle | 7.3.3 | 7.3.3 | 詳情請參閱「更新 Gradle」一節。 |
SDK 版本工具 | 30.0.3 | 30.0.3 | 安裝或設定 SDK 版本工具。 |
NDK | 不適用 | 21.4.7075529 | 安裝或設定 NDK 其他版本。 |
JDK | 11 | 11 | 詳情請參閱「設定 JDK 版本」相關說明。 |
版本分析器中的 Jetifier 警告和檢查
如果專案的 gradle.properties
檔案包含 android.enableJetifier=true
,版本分析器現在會顯示警告。這個旗標是在先前的 Android Studio 版本中所推出,用於針對未原生支援 AndroidX 的程式庫啟用 AndroidX。不過,程式庫生態系統大多都已改為原生支援 AndroidX,因此您的專案可能不再需要 Jetifier 旗標。此外,該標記也可能導致建構效能下降。看到這則警告後,您可以在版本分析器中執行檢查,確認能否移除該旗標。
支援測試固件
從 Android Studio Chipmunk Beta 1 開始,Android Studio 一併支援 Android 與 Java 測試固件。您可以參閱 Gradle 的「使用測試固件」指南,進一步瞭解測試固件功能,以及如何在 Java 專案中使用這類固件。
如要在 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 開始,您無法再跨多個來源集共用同一個來源目錄。舉例來說,您無法同時對單元測試和檢測設備測試使用相同的測試來源。詳情請參閱「變更預設來源集設定」。