Чтобы переводить контент на ваш предпочитаемый язык, Google использует технологии на основе искусственного интеллекта. Переводы от ИИ могут содержать ошибки.
Kotlin DSL используется для конфигурации сборки по умолчанию
В новых проектах для конфигурации сборки по умолчанию используется Kotlin DSL (build.gradle.kts). Это удобнее, чем Groovy DSL (build.gradle), поскольку в Kotlin DSL есть подсветка синтаксиса, автозаполнение кода и переход к объявлениям. Если вы используете 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
Начиная с версии 8.1.0-alpha04, Android Lint содержит байт-код, предназначенный для JVM 17. Если вы пишете собственные проверки Lint, вам нужно скомпилировать код с помощью JDK 17 или более поздней версии и указать jvmTarget = '17' в параметрах компилятора Kotlin.
Настройки сжатия общей библиотеки C/C++ перенесены в DSL
Начиная с версии AGP 8.1.0-alpha10, вы будете получать предупреждение, если не настроите сжатие общей библиотеки C/C++ с помощью DSL вместо манифеста. Ниже рассказывается, как изменить конфигурацию, чтобы использовать DSL. Чтобы получить помощь с этими обновлениями, используйте помощника по обновлению AGP (Инструменты > Помощник по обновлению AGP).
Чтобы использовать несжатые общие библиотеки C/C++, удалите атрибут android::extractNativeLibs из манифеста и добавьте следующий код в файл build.gradle.kts на уровне модуля (файл build.gradle, если вы используете Groovy):
Если включить эту функцию, не указав конфигурации подписи, AGP будет использовать конфигурацию отладочной подписи по умолчанию при выполнении сборки с возможностью профилирования или отладки. По умолчанию этот флаг отключен, чтобы авторы сборок указывали определенные конфигурации подписи профилирования.
android.experimental.library.desugarAndroidTest
AGP 8.0
false
Этот флаг позволяет разработчикам библиотек включить десахаризацию основной библиотеки для тестовых APK-файлов, не влияя на созданный AAR, например с помощью линтинга.
В будущем мы планируем добавить поддержку этого поведения в Variant API.
Если этот параметр включен, управляемые устройства Gradle позволяют использовать пользовательский тип устройства, который может быть предоставлен плагином. Этот флаг необходимо включить, если вы хотите использовать плагин Firebase Test Lab.
android.lint.printStackTrace
AGP 8.0
false
Если этот параметр включен, Android Lint выводит трассировку стека при сбое. Этот флаг обладает теми же возможностями, что и переменная среды LINT_PRINT_STACKTRACE.
Указывает максимальное количество управляемых Gradle устройств (AVD), которые могут быть активны в любой момент времени. Если значение равно 0 или отрицательное, максимальное количество устройств не ограничено.
[AGP 8.1.0] При выполнении команды ./gradlew test возникает ошибка "Не удается найти выходные данные манифеста", если для параметров splits.abi.isEnable и testOptions.unitTests.isIncludeAndroidResources задано значение true
[AGP 8.1.0] При выполнении команды ./gradlew test возникает ошибка "Не удается найти выходные данные манифеста", если для параметров splits.abi.isEnable и testOptions.unitTests.isIncludeAndroidResources задано значение true
R8 завершается с ошибкой "Undefined value encountered during compilation" (Неопределенное значение, обнаруженное во время компиляции) для play-services-measurement-21.3.0-runtime.jar
Сбой с ошибкой проверки на устройствах Android 12 и более поздних версий
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2026-10-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"]],["Последнее обновление: 2026-10-08 UTC."],[],[]]