Kotlin DSL используется по умолчанию для конфигурации сборки
В новых проектах для настройки сборки по умолчанию используется Kotlin DSL ( build.gradle.kts ). Это обеспечивает более удобный интерфейс редактирования, чем Groovy DSL ( build.gradle ), с подсветкой синтаксиса, автодополнением кода и навигацией по объявлениям. Обратите внимание: если вы используете AGP 8.1 и Kotlin DSL для настройки сборки, для оптимальной работы следует использовать Gradle 8.1. Подробнее см. в руководстве по миграции Kotlin DSL .
Автоматическая поддержка языка для каждого приложения
Начиная с Android Studio Giraffe Canary 7 и AGP 8.1.0-alpha07, вы можете настроить приложение для автоматической поддержки языковых настроек для каждого приложения . На основе ресурсов вашего проекта плагин Android Gradle генерирует файл LocaleConfig и добавляет ссылку на него в финальный файл манифеста, поэтому вам больше не придётся делать это вручную. AGP использует ресурсы в папках res модулей вашего приложения и все зависимости модулей библиотеки для определения локалей, включаемых в файл LocaleConfig .
Обратите внимание, что функция автоматического выбора языка для каждого приложения поддерживает приложения на базе Android 13 (уровень API 33) и выше. Для использования этой функции необходимо установить значение compileSdkVersion не ниже 33. Для настройки языковых настроек для каждого приложения в предыдущих версиях Android по-прежнему необходимо использовать API и встроенные средства выбора языка .
Чтобы включить автоматическую поддержку языка для каждого приложения, укажите языковой стандарт по умолчанию:
В папке res модуля приложения создайте новый файл с именем resources.properties .
В файле resources.properties задайте локаль по умолчанию с помощью метки unqualifiedResLocale . Для формирования имён локалей объедините код языка с необязательными кодами алфавита и региона, разделяя их дефисом:
Язык: используйте двух- или трехбуквенный код ISO 639-1 .
Скрипт (необязательно): используйте код ISO 15924 .
Регион (необязательно): используйте либо двухбуквенный код ISO 3166-1-alpha-2 , либо трехзначный код UN_M.49 .
Например, если вашей локалью по умолчанию является американский английский:
unqualifiedResLocale=en-US
AGP добавляет эту локаль по умолчанию и любые другие указанные вами локали , используя каталоги values-* в папке res , в автоматически сгенерированный файл LocaleConfig .
Автоматическая поддержка языков для каждого приложения по умолчанию отключена. Чтобы включить эту функцию, используйте параметр generateLocaleConfig в блоке androidResources {} файла build.gradle.kts на уровне модуля (файл build.gradle , если вы используете Groovy):
Android Lint содержит байт-код, предназначенный для JVM 17
Начиная с AGP 8.1.0-alpha04, Android Lint содержит байт-код, предназначенный для JVM 17. Если вы пишете пользовательские проверки lint, вам необходимо выполнить компиляцию с использованием JDK 17 или выше и указать jvmTarget = '17' в параметрах компилятора Kotlin.
Настройка сжатия собственной библиотеки перенесена в DSL
Начиная с AGP 8.1.0-alpha10, вы получите предупреждение, если не настроите сжатие собственной библиотеки с использованием DSL вместо манифеста. Ниже приведено руководство по обновлению конфигурации для использования DSL. Чтобы получить помощь в обновлении, воспользуйтесь помощником по обновлению AGP ( Инструменты > Помощник по обновлению AGP ).
Чтобы использовать несжатые собственные библиотеки, удалите атрибут android::extractNativeLibs из манифеста и добавьте следующий код в файл build.gradle.kts на уровне модуля (файл build.gradle , если вы используете Groovy):
Включение этого параметра без указания конфигураций подписи приводит к тому, что AGP использует конфигурацию подписи отладки по умолчанию при запуске профилируемой или отлаживаемой сборки. Этот флаг по умолчанию отключен, чтобы побудить авторов сборок указывать конкретные конфигурации подписи профилирования.
android.experimental.library.desugarAndroidTest
АГП 8.0
false
Этот флаг позволяет сборщикам библиотек включать десахаризацию основной библиотеки для тестовых APK-файлов, не влияя на создаваемый AAR-файл, например, посредством линтинга. Мы планируем в конечном итоге реализовать поддержку этого поведения в Variant API.
Если этот параметр включен, Gradle Managed Devices позволяет пользователю определить тип устройства, предоставляемый плагином. Этот флаг необходимо включить, если вы хотите использовать плагин Firebase Test Lab.
android.lint.printStackTrace
АГП 8.0
false
Если флаг включён, Android lint выводит трассировку стека в случае сбоя. Этот флаг имеет те же возможности, что и переменная окружения LINT_PRINT_STACKTRACE .
Задаёт максимальное количество одновременно активных устройств Gradle Managed Devices (AVD) в любой момент времени. Если значение равно 0 или отрицательно, максимальное количество устройств не ограничено.
[AGP 8.1.0] Тест ./gradlew завершается ошибкой «Не удалось найти выходные данные манифеста», если значения splits.abi.isEnable и testOptions.unitTests.isIncludeAndroidResources равны true.
[AGP 8.1.0] Тест ./gradlew завершается ошибкой «Не удалось найти выходные данные манифеста», если значения splits.abi.isEnable и testOptions.unitTests.isIncludeAndroidResources равны true.
Не запускайте задачу дексирования для классов подпроектов, если они уже дексированы с помощью преобразований артефактов.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-08-08 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-08-08 UTC."],[],[]]