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 Upgrade Assistant ( Tools > AGP Upgrade Assistant ).
Чтобы использовать несжатые собственные библиотеки, удалите атрибут android::extractNativeLibs из манифеста и добавьте следующий код в файл build.gradle.kts на уровне модуля (файл build.gradle , если вы используете Groovy):
Включение этого параметра без указания конфигураций подписи приводит к тому, что AGP использует конфигурацию подписи отладки по умолчанию при запуске профилируемой или отлаживаемой сборки. Этот флаг отключен по умолчанию, чтобы побудить авторов сборки объявлять определенные конфигурации подписи профилирования.
android.experimental.library.desugarAndroidTest
АГП 8.0
false
Этот флаг позволяет сборщикам библиотек включать десахаринг основных библиотек для тестовых APK, не влияя на созданный AAR, например, через линтинг. Мы планируем в конечном итоге поддерживать это поведение в API Variant.
Если включено, 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-06-21 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-06-21 UTC."],[],[]]