Плагин Android Gradle 7.2.0 (май 2022 г.)
Плагин Android Gradle 7.2.0 — это крупный релиз, включающий множество новых функций и улучшений.
Это небольшое обновление соответствует выпуску Android Studio Chipmunk Patch 2 и включает в себя следующие исправления ошибок:
- Проблема № 232438924 : AndroidGradlePlugin версии 7.2 нарушает работу API преобразования при использовании вместе с API ASM
- Проблема № 231037948 : AGP 7.2.0-rc01:buildSrc:generatePrecompiledScriptPluginAccessors - shadow/bundletool/com/android/prefs/AndroidLocation$AndroidLocationException
Это небольшое обновление соответствует выпуску Android Studio Chipmunk Patch 1 и включает в себя следующие исправления ошибок:
- Проблема № 230361284 : bundletool неправильно упаковывает базовые профили
Чтобы ознакомиться с другими исправлениями ошибок, включенными в этот выпуск, см. заметки о выпуске Android Studio Chipmunk Patch 1 .
Совместимость
Минимальная версия | Версия по умолчанию | Примечания | |
---|---|---|---|
Градл | 7.3.3 | 7.3.3 | Более подробную информацию см. в разделе Обновление Gradle . |
Инструменты сборки SDK | 30.0.3 | 30.0.3 | Установите или настройте инструменты сборки SDK. |
НДК | Н/Д | 21.4.7075529 | Установите или настройте другую версию NDK. |
JDK | 11 | 11 | Более подробную информацию см. в разделе «Настройка версии JDK» . |
Предупреждение Jetifier и проверка в Build Analyzer
Build Analyzer теперь отображает предупреждение, если файл gradle.properties
вашего проекта включает android.enableJetifier=true
. Этот флаг был введен в предыдущей версии Android Studio для включения AndroidX для библиотек, которые не поддерживают AndroidX нативно. Однако экосистема библиотек в основном перешла на поддержку AndroidX нативно, и флаг Jetifier, вероятно, больше не нужен вашему проекту. Кроме того, флаг может привести к снижению производительности сборки. Если вы видите это предупреждение, вы можете запустить проверку в Build Analyzer, чтобы подтвердить, можно ли удалить флаг.
Поддержка тестовых приспособлений
Начиная с Android Studio Chipmunk Beta 1, Android Studio поддерживает тестовые фикстуры как для Android, так и для Java. См. руководство Gradle по использованию тестовых фикстур {:.external} для получения дополнительной информации о функции тестовых фикстур и о том, как использовать ее в проекте 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() }
}
Чтобы использовать AAR-файл тестовых фикстур опубликованной библиотеки Android, можно использовать вспомогательный метод Gradle testFixtures()
.
dependencies {
testImplementation testFixtures('com.example.company:publishedLib:1.0')
}
По умолчанию lint будет анализировать источники тестовых фикстур. Вы можете настроить lint так, чтобы он игнорировал источники тестовых фикстур следующим образом:
android {
lint {
ignoreTestFixturesSources true
}
}
Дублирование корней контента не поддерживается
Начиная с AGP 7.2, вы больше не можете совместно использовать один и тот же исходный каталог для нескольких исходных наборов. Например, вы не можете использовать одни и те же тестовые источники для модульных тестов и инструментальных тестов. Чтобы узнать больше, см. Изменение конфигураций исходных наборов по умолчанию .