Плагин Android Gradle 8.9.0 (март 2025 г.)

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

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

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

Минимальная версия Версия по умолчанию Примечания
Грэдл 8.11.1 8.11.1 Для получения более подробной информации см. раздел «Обновление Gradle» .
Инструменты сборки SDK 35.0.0 35.0.0 Установите или настройте инструменты сборки SDK.
НДК Н/Д 27.0.12077973 Установите или настройте другую версию NDK.
JDK 17 17 Для получения более подробной информации см. раздел «Настройка версии JDK» .

Исправлены ошибки

Плагин Android Gradle 8.9.2

Исправлены ошибки
Уменьшитель (R8)
Проблема с уменьшением ресурсов в AGP 8.9 приводит к отсутствию ресурсов в динамических функциональных модулях.
ClassCastException возникает при безопасном приведении типов в инициализации класса.
Невозможно вызвать com.android.tools.r8.internal.H5.x()

Плагин Android Gradle 8.9.1

Исправлены ошибки
Дексер (D8)
Некорректная обратная совместимость android.os.Build.VERSION_CODES_FULL с Baklava.
Уменьшитель (R8)
Не удается сгенерировать подписанный APK-файл после обновления до AGP 8.9.0.
Анализ свойства written-fore-read в местах распределения памяти выявляет ошибку при генерации файла класса.
Проблема с Java SPI в R8 shrinker версий 8.6.*, 8.7.*, 8.8.0

Плагин Android Gradle 8.9.0

Исправлены ошибки
Плагин Android Gradle
Предоставьте информативное сообщение об ошибке, если задача установки GMD завершается с ошибкой из-за недостатка места на диске.
Плагин com.android.settings не распознает targetSdk
Неинформативная ошибка: «Не указана версия compileSdkVersion. Пожалуйста, добавьте её в build.gradle».
Отсутствует опция "Чистая сборка" в меню "Сборка".
Возможно, стоит разрешить встроенной в AGP поддержке Kotlin автоматически добавлять зависимость от стандартной библиотеки Kotlin.
Обновите параметр shouldConfigureKotlinPlatformAttribute для обработки встроенной поддержки Kotlin.
Укажите синтаксис Kotlin Gradle в сообщении об ошибке для `checkTestedAppObfuscationRelease`.
Ошибка Fused Library, когда неразрешенная зависимость может быть улучшена.
Системные свойства из файла gradle.properties не передаются в обработчики Gradle в R8 в отдельных процессах.
Присвойте методу BuiltArtifact.outputFile тип File.
Отсутствие указания пространства имен в объединенной библиотеке не приводит к корректному сообщению об ошибке.
В настройках линтера AGP 7.1.0-alpha08 отсутствует поддержка стандартного вывода.
Плагин Android Gradle: Варианты должны отображать имена наборов исходных файлов.
Кэш конфигурации неустойчив к изменению значения переменной среды TERM.
Функция AndroidComponentsExtension.addSourceSetConfigurations перестаёт работать при включенной статистике.
Скрипт инициализации 'C:\Users\mypc\AppData\Local\Temp\ijresolvers2.gradle', строка: 162
Функция AndroidComponentsExtension.addSourceSetConfigurations перестаёт работать при включенной статистике.
Дексер (D8)
java.lang.VerifyError: Verifier rejected class: [0x430] copy1 v2<-v264 type=Undefined cat=3
Ворс
Lint аварийно завершает работу при проверке Gradle.
Проверка кода завершается с ошибкой InstantiationException без сообщения об исключении в трассировке стека.
Ложное срабатывание проверки кода (lint check) и разрешение android.permission.SCHEDULE_EXACT_ALARM предоставляется только системным приложениям.
Проверка StringFormatInvalid должна применяться к методу Compose stringResource.
Аннотация `requiresFeature` не работает для файлов Kotlin.
kotlin android.os.Handler removeCallbacks Runnable
Ошибка WrongConstant: lint проверяет определение константы вместо использования оператора Shift.
Ошибка WrongConstant lint появляется дважды.
Ошибка выполнения ниже API 26 с неподдерживаемым API Java nio (без ошибок линтинга)
Линт предотвращает использование RequiresApi даже в приватных вспомогательных методах в тестах.
В Android Studio K2 Mode выдает предупреждение RestrictedApi при использовании метода .hasRoute(Route::class).
Lint предлагает заменить аннотацию @RequiresExtension в тесте на @SdkSuppress, которая не поддерживает расширения SDK.
Lint некорректно сообщает о ненужной вложенной компоновке, когда FrameLayout используется с fitSystemWindows для обертывания дочернего RelativeLayout, которому требуется пользовательский отступ.
Правило проверки синтаксиса CoarseFineLocation не учитывает атрибут maxSdkVersion.
В версии 8.7.3 библиотека AppLinkSplitToWebAndCustom имеет статус UnknownIssue.
Проверка синтаксиса StringEscapeDetector завершается с ошибкой при использовании символа "\\"
Неправильное предупреждение линтера для аннотации `@Parcelize` на закрытых интерфейсах
AS 2024.3.1.4 периодически зависает при редактировании текстов на Kotlin.
Интеграция Lint
lintVitalRelease не запускается автоматически при сборке пакета приложения.
Уменьшитель (R8)
После обновления до AGP 8.8 Gson ProGuard работает некорректно.
java.lang.VerifyError: Verifier rejected class
Программа Leanback вылетает при использовании минифицированной версии с R8, включенной в AGP 8.10.0-alpha04.