Плагин Android Gradle 8.6.0 (август 2024 г.)

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

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

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

Минимальная версия Версия по умолчанию Примечания
Градл 8,7 8,7 Чтобы узнать больше, см. обновление Gradle .
Инструменты сборки SDK 34.0.0 34.0.0 Установите или настройте инструменты сборки SDK.
НДК Н/Д 26.1.10909125 Установите или настройте другую версию NDK.
ЯДК 17 17 Дополнительные сведения см. в разделе Настройка версии JDK .

Исправлены проблемы

Плагин Android Gradle 8.6.0

Исправленные проблемы
Плагин Android Gradle
Регрессия AGP 7.0.0-alpha10: не удалось применить плагин «com.android.internal.library», когда привязка данных включена.
Ошибки при запуске lint с K2 UAST и без него
Манифест не создан для конфигурации androidTest варианта.
AGP 8.4 пытается настроить профили запуска в отладочных сборках
[Koala 2024.1.2 Canary 2] Ошибка при запуске модуля базового профиля в разделенном APK
Очистить/удалить ProjectInfo
Обновите устаревший документ kdoc для isIncludeAndroidResources в AGP DSL.
Lint использует каталог res без добавления зависимости задачи
AGP 8.5: выполняется гораздо больше задач «mergeDebugResources», что замедляет сборку.
Добавление каталога srcs через Variant API не работает должным образом
Дексер (D8)
Обновите базу данных API до Android 15 (уровень API 35).
java.lang.VerifyError: верификатор отклонил класс com.pax.log.LogUtils: java.lang.StackTraceElement com.pax.log.LogUtils.getCaller(com.pax.log.b, java.lang.StackTraceElement[], int) не удалось проверить
Ворс
Lint не вызывает visitAnnotationUsage для использования аннотированных аннотаций.
Ошибка проверки UnknownNullness при использовании аннотаций использования типов
[библиотека desugar] lint показывает ложноположительное предупреждение Предупреждения NewApi с включенной дешугаризацией
Неверное предупреждение диспетчера учетных данных Lint при износе
Подсказка: SetTextI18n жалуется на присвоение пустой строки.
Интеграция Линта
Задачи Lint завершаются сбоем при включенной сборке
Шринкер (R8)
[r8 8.5] Горизонтальное слияние классов r8 вызывает ошибку проверки на Android5 при отключении моделирования API
Выпуск Wear OS, созданный с помощью плагина Gradle 8.4.0/8.5.0, может вызывать ошибку java.lang.IllegalAccessError.
R8 неявно заменяет пустое предложение-член соответствием ()
[r8 8.5] вертикальное слияние классов, вызывающее NPE во время выполнения
Ошибка обработки R8, возможно, из-за оператора сдвига вправо
R8 (AGP 8.5.0+) завершается с ошибкой «Неожиданная перезапись элемента: ... на два разных элемента:...»
Файл dex, созданный R8, показывает «Невозможно найти статический основной (String []) в «Тесте»» при выполнении.
Различное поведение программ, упакованных R8 и D8
R8 NullPointer после обновления до Kotlin 2.0

Плагин Android Gradle 8.6.1

Исправленные проблемы
Дексер (D8)
Задача/преобразование Dexing генерирует недетерминированное содержимое classs.dex.
Шринкер (R8)
R8 8.5.x StackOverflowError в SimpleInliningConstraintAnaанализе
Задача: xxxx: minifyXXXReleaseWithR8 ОШИБКА: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: невозможно вызвать «com.android.tools.r8.ir.anaанализ.type.TypeElement.asClassType()»