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

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

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

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

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

Устраненные проблемы

Плагин Android Gradle 8.6.1

Устраненные проблемы
Dexer (D8)
Задача Dexing/transform создает недетерминированное содержимое файла classes.dex
Shrinker (R8)
R8 8.5.x StackOverflowError в SimpleInliningConstraintAnalysis
Task :xxxx:minifyXXXReleaseWithR8 ERROR: R8: java.util.ConcurrentModificationException
java.lang.NullPointerException: Cannot invoke "com.android.tools.r8.ir.analysis.type.TypeElement.asClassType()"

Плагин 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 с помощью API вариантов работает неправильно
Dexer (D8)
Обновление базы данных API до Android 15 (уровень API 35)
java.lang.VerifyError: Verifier rejected class com.pax.log.LogUtils: java.lang.StackTraceElement com.pax.log.LogUtils.getCaller(com.pax.log.b, java.lang.StackTraceElement[], int) failed to verify
Lint
Lint не вызывает visitAnnotationUsage для использования аннотированных аннотаций
Ошибка линтера UnknownNullness при использовании аннотаций type-use
[library desugar] При включенной десахаризации инструмент lint показывает ложные предупреждения NewApi
Некорректное предупреждение Credential Manager Lint на устройстве Wear
Lint: SetTextI18n жалуется на присвоение пустой строки.
Интеграция с Lint
Задача Lint завершается с ошибкой при включенной сборке
Shrinker (R8)
[r8 8.5]Горизонтальное объединение классов r8 вызывает ошибку проверки в Android 5 при отключении моделирования API
Выпуск Wear OS, созданный с помощью плагина Gradle 8.4.0/8.5.0, может вызвать ошибку java.lang.IllegalAccessError
R8 неявно заменяет пустой пункт участника на соответствие ().
[r8 8.5] Объединение вертикальных классов приводит к исключению NPE во время выполнения
Ошибка обработки R8, возможно, из-за оператора сдвига вправо
R8 (AGP 8.5.0+) завершается с ошибкой "Unexpected rewriting of item: ... to two distinct items:..."
При выполнении файла DEX, созданного R8, появляется сообщение "Не удалось найти статический метод main(String[]) в классе Test"
Различия в поведении программ, упакованных с помощью R8 и D8
R8 NullPointer после обновления до Kotlin 2.0