Плагин Android Gradle 8.3.0 — это крупный релиз, включающий множество новых функций и улучшений.
Совместимость
Максимальный уровень API, поддерживаемый плагином Android Gradle 8.3, — API 34. Вот дополнительная информация о совместимости:
Минимальная версия | Версия по умолчанию | Примечания | |
---|---|---|---|
Градл | 8.4 | 8.4 | Более подробную информацию см. в разделе Обновление Gradle . |
Инструменты сборки SDK | 34.0.0 | 34.0.0 | Установите или настройте инструменты сборки SDK. |
НДК | Н/Д | 25.1.8937393 | Установите или настройте другую версию NDK. |
JDK | 17 | 17 | Более подробную информацию см. в разделе «Настройка версии JDK» . |
Ниже приведены новые функции плагина Android Gradle 8.3.
Выпуски патчей
Ниже приведен список выпущенных исправлений в Android Studio Iguana и плагине Android Gradle 8.3.
Android Studio Iguana | 2023.2.1 Patch 2 и AGP 8.3.2 (апрель 2024 г.)
Это небольшое обновление включает в себя исправления следующих ошибок .
Android Studio Iguana | 2023.2.1 Patch 1 и AGP 8.3.1 (март 2024 г.)
Это небольшое обновление включает в себя исправления следующих ошибок .
Поддержка каталогов версий Gradle
Android Studio поддерживает каталоги версий Gradle на основе TOML, функцию, которая позволяет управлять зависимостями в одном центральном месте и совместно использовать зависимости между модулями или проектами. Теперь Android Studio упрощает настройку каталогов версий с помощью предложений редактора и интеграции с диалоговым окном структуры проекта . Узнайте, как настроить и настроить каталоги версий Gradle или как перенести сборку в каталоги версий .
Автодополнение кода и навигация
Android Studio предлагает автодополнение кода при редактировании каталога версий в формате файла TOML или добавлении зависимости из каталога версий в файл сборки. Чтобы использовать автодополнение кода, нажмите Ctrl+Пробел ( Command+Пробел на macOS). Кроме того, вы можете быстро перейти от ссылки на зависимость в файле build.gradle
вашего приложения к месту, где она объявлена в каталоге версий, нажав Ctrl+b ( Command+b на macOS).
Интеграция с диалоговым окном «Структура проекта»
Если ваш проект использует каталог версий, определенный в формате файла TOML, вы можете редактировать переменные, которые вы там определили, через диалоговое окно структуры проекта Вид переменных ( Файл > Структура проекта > Переменные ) в Android Studio. Для каждого каталога версий есть раскрывающийся список, в котором перечислены переменные из этого каталога. Чтобы отредактировать переменную, щелкните ее значение и перезапишите его. При сохранении этих изменений файл TOML обновляется соответствующим образом.
Вы также можете обновить зависимости в диалоговом окне Структура проекта Вид зависимостей ( Файл > Структура проекта > Зависимости ). Чтобы обновить версии с помощью диалогового окна Структура проекта , перейдите к модулю и зависимости, которые вы хотите изменить, а затем обновите поле Запрошенная версия . При сохранении этих изменений файл TOML обновляется соответствующим образом. Обратите внимание, что если версия зависимости была определена с помощью переменной, обновление версии напрямую таким образом заменяет переменную жестко закодированным значением. Также имейте в виду, что удаление зависимости из файла сборки, независимо от того, используете ли вы диалоговое окно Структура проекта или нет, не удаляет зависимость из каталога версий.
Известные проблемы и ограничения
Ниже перечислены известные проблемы и ограничения, связанные с поддержкой каталогов версий Gradle в Android Studio.
Ошибка подсветки объявлений псевдонимов плагинов в файлах скриптов Kotlin: при добавлении объявления плагина в форме
alias(libs.plugins.example)
редактор добавляет красное подчеркивание под частьюlibs
. Это известная проблема в версиях Gradle 8.0 и ниже, и она будет решена в будущем выпуске Gradle.Поддержка Android Studio только для каталогов версий в формате TOML: в настоящее время поддержка автодополнения кода, навигации и диалога структуры проекта Android Studio доступна только для каталогов версий, определенных в формате файла TOML. Однако вы по-прежнему можете добавить каталог версий непосредственно в файл
settings.gradle
и использовать его зависимости в своем проекте.Навигация для файлов сборки KTS не поддерживается: переход к определению зависимости в каталоге версий с помощью Control + щелчок ( Command + щелчок в macOS) пока не поддерживается для файлов сборки, написанных с использованием скрипта Kotlin.
Firebase Assistant добавляет зависимости непосредственно в скрипты сборки: Firebase Assistant добавляет зависимости непосредственно в скрипты сборки, а не через каталоги версий.
Функциональность "Find usages" не поддерживается: поиск использований переменной каталога версий в других файлах сборки пока не поддерживается, независимо от того, находится ли файл сборки в KTS или Groovy. То есть использование Control +click ( Command +click в macOS) на определении переменной в каталоге версий не приводит к файлам сборки, где используется переменная.
Диалоговое окно Project Structure в Android Studio показывает несколько файлов каталогов, если они находятся в корневой папке
gradle
, но не показывает каталоги для составной сборки . Например, если у вас есть два файла каталога — один для вашего приложения и один для составной сборки — диалоговое окно Project Structure показывает только файл каталога приложения. Вы можете использовать составную сборку, но вам придется редактировать ее файл TOML напрямую.
Дополнительные сведения о SDK: вопросы политики
Android Studio отображает предупреждения lint в файлах build.gradle.kts
и build.gradle
, а также в диалоговом окне структуры проекта для общедоступных SDK, которые имеют нарушения политики Play в индексе Google Play SDK . Вам следует обновить все зависимости, которые нарушают политику Play, поскольку эти нарушения могут помешать вам публиковать в консоли Google Play в будущем. Предупреждения о нарушении политики дополняют предупреждения об устаревшей версии, отображаемые Android Studio.
Поддержка версии Android Studio compileSdk
Android Studio отображает предупреждение, если ваш проект использует compileSdk
, который не поддерживается текущей версией Android Studio. Если доступно, также предлагается перейти на версию Android Studio, которая поддерживает compileSdk
используемый вашим проектом. Имейте в виду, что обновление Android Studio может также потребовать обновления AGP . AGP также отображает предупреждение в окне инструмента сборки , если compileSdk
, используемый вашим проектом, не поддерживается текущей версией AGP.
Изменения в поведении ворса
Начиная с плагина Android Gradle 8.3.0-alpha02, при запуске lint на модуле запускаются отдельные задачи анализа lint для основных и тестовых компонентов модуля. Причина этого изменения — повышение производительности. Чтобы вернуться к предыдущему поведению, установите android.experimental.lint.analysisPerComponent=false
в файле gradle.properties
.
Точное сокращение ресурсов включено по умолчанию
Точное сокращение ресурсов, которое удаляет неиспользуемые записи из файла resources.arsc
и устраняет неиспользуемые файлы ресурсов, включено по умолчанию. Когда это сокращение включено, ваша таблица ресурсов уменьшается, и только указанные записи папки res
включаются в APK.
Чтобы отключить точное сжатие ресурсов, установите для параметра android.enableNewResourceShrinker.preciseShrinking
значение false
в файле gradle.properties
вашего проекта.
Исправлены проблемы
Плагин Android Gradle 8.3.0
Исправленные проблемы | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Плагин Android Gradle |
| |||||||||||||||||||||||||||||||||||||||||||||||||
Дексер (D8) |
| |||||||||||||||||||||||||||||||||||||||||||||||||
Ворс |
| |||||||||||||||||||||||||||||||||||||||||||||||||
Интеграция Линта |
| |||||||||||||||||||||||||||||||||||||||||||||||||
Усадочный аппарат (R8) |
|
Плагин Android Gradle 8.3.1
Исправленные проблемы | ||
---|---|---|
Плагин Android Gradle |
| |
Интеграция Линта |
|
Плагин Android Gradle 8.3.2
Исправленные проблемы | |||
---|---|---|---|
Плагин Android Gradle |
| ||
Интеграция Линта |
|