Плагин Android Gradle 8.8.0 (январь 2025 г.)

Плагин Android Gradle 8.8.0 — это основной выпуск, включающий множество новых функций и улучшений.

Совместимость

Максимальный уровень API, который поддерживает плагин Android Gradle 8.8, — это уровень API 35. Вот другая информация о совместимости:

Минимальная версия Версия по умолчанию Примечания
Градл 8.10.2 8.10.2 Чтобы узнать больше, см. обновление Gradle .
Инструменты сборки SDK 35.0.0 35.0.0 Установите или настройте инструменты сборки SDK.
НДК Н/Д 27.0.12077973 Установите или настройте другую версию NDK.
ЯДК 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 должен предоставлять встроенный ArtifactLoader для apk целевого проекта в проектах com.android.test.
[AGP] Ленивый поставщик SdkComponents.ndkDirectory не может создать значение, но нетерпеливый API android.ndkDirectory работает
Параметры сборки: добавьте новую опцию «Конфигурация запуска сборки» и сделайте ее значением по умолчанию.
BuildConfig невозможно разрешить в модульных тестах при использовании android.enableBuildConfigAsBytecode=true
Приложения, созданные из пакетов, не учитывают поддержку изолированной программной среды конфиденциальности.
Плагин com.android.settings не распознает targetSdk
Дексер (D8)
Библиотека Desugar 2.1.0 не работает с AGP 8.5.2
Ворс
Несовместимость KtAnalysisSessionProvider с проверками на ворс, представленными в версии 8.7.0-alpha04.
«Ложное срабатывание» WrongConstant при использовании PackageManager.ResolveInfoFlags.of с Kotlin
Ошибка «Необходимо указать хотя бы один хост» при настройке схемы фильтра намерений http или https.
Обработка аннотаций использования типов в большем количестве случаев для проверки UnknownNullness
AGP 8.6.1: Регрессия — ошибка проверки WrongConstant при использовании [Int].toLong() внутри @LongDef в Kotlin
AGP 8.7.0 — Lint False Positive RestrictedApi на NavOptionsBuilder.popUpTo
Неправильно, постоянный ворс появляется дважды
Предупреждение «MonochromeLauncherIcon: монохромный значок не определен» не улавливается Android Studio
AbstractAnnotationDetector проверяет неправильные перегруженные функции/конструкторы.
Lint ImportAliasTestMode не создает псевдонимы импорта для функций верхнего уровня.
Неправильно, постоянный ворс появляется дважды
Новые предупреждения об обнаружении ObsoleteSdkInt в AGP 8.8.
Ложноположительная проверка lint android.permission.SCHEDULE_EXACT_ALARM предоставляется только системным приложениям.
Режим K2 выдает предупреждение RestrictedApi при использовании .hasRoute(Route::class) в Android Studio
Интеграция Линта
Задача варианта Lint не найдена после оценки
Сбой линтинга при импорте файла AAR с файлами реализации.

Плагин Android Gradle 8.8.1

Исправленные проблемы
Дексер (D8)
Добавьте OpenJDK 23 для тестирования.
Шринкер (R8)
java.lang.AbstractMethodError: Класс приемника [...]$$Lambda$[...] не определяет и не наследует реализацию разрешенного метода [...] интерфейса [...]
NPE в Enqueuer связан с записью DexCallSite
R8 8.7.18 вызывает исключение нулевого указателя во время выполнения при вызове задания?.cancel
java.lang.NoClassDefFoundError: Не удалось разрешить: Lkotlin/LazyThreadSafetyMode
Монзо, похоже, тратит слишком много времени на тряску деревьев.
Ошибка сборки AGP 8.8: R8: java.lang.NullPointerException: невозможно прочитать поле «b», поскольку возвращаемое значение «com.android.tools.r8.internal.BS.a(com.android.tools.r8.internal.cR)» равно нулю.

Плагин Android Gradle 8.8.2

Исправленные проблемы
Плагин Android Gradle
Строка сценария инициализации «C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle»: 162
Шринкер (R8)
Gson proguard не работает должным образом после обновления до AGP 8.8.
java.lang.VerifyError: класс, отклоненный проверяющим
Leanback аварийно завершает работу при минификации с помощью R8, включенного в AGP 8.10.0-alpha04.