Android сбой при связывании ресурсов AAPT: неизвестный параметр --proguard-minimal-keep-rules - PullRequest
1 голос
/ 30 мая 2020

Моя Android Studio работала нормально, все было хорошо, но после обновления Android Studio до последней версии и обновления gradle я получил следующую ошибку:

Не могли бы вы предоставить решение, спасибо

Task: app: processDebugResources FAILED AGPBI: {"kind": "error", "text": "Android не удалось связать ресурсы", "sources": [{}], "оригинал": "AAPT: неизвестный параметр '--proguard-minimal-keep-rules'. \ n \ naapt2 ссылка [параметры] -o arg --manifest arg files ... \ n \ nОпции: \ n -o arg Выходной путь. \ N --manifest arg Путь к манифесту Android для сборки. \ N -I arg Добавляет Android APK для связи. \ N -A arg Каталог ресурсов для включения в APK. Это unprocessed. \ n -R arg Единица компиляции для связывания с использованием семантики overlay. \ n Последний указанный конфликтующий ресурс имеет приоритет. \ n --package-id arg Укажите идентификатор пакета, который будет использоваться для этого приложения. Должен быть больше или равно \ n 0x7f и не может использоваться с --stati c -lib или --shared-lib. \ n - java arg Каталог, в котором t o сгенерировать R. java. \ n --proguard arg Выходной файл для сгенерированных правил Proguard. \ n --proguard-main-dex arg Выходной файл для сгенерированных правил Proguard для основного dex. \ n --proguard-conditional- keep-rules Генерировать условные правила хранения Proguard. \ n --no-auto-version Отключает автоматическое управление версиями c style и layout SDK. \ n --no-version-vectors Отключает автоматическое c управление версиями векторных чертежей. Используйте это только \ n при построении с помощью библиотеки поддержки векторных чертежей. \ N --no-version-transitions Отключает автоматическое c управление версиями ресурсов перехода. Используйте это только \ n при сборке с библиотекой поддержки переходов. \ N --no-resource-deduping Отключает автоматическое c дедупликацию ресурсов с \ n одинаковыми значениями в совместимых конфигурациях. \ N --enable-sparse-encoding Уменьшает APK размер за счет производительности извлечения ресурсов. \ n -x Флаг прежних версий, указывающий на использование идентификатора пакета 0x01. \ n -z Требовать локализацию строк, помеченных как 'предлагаемые'. \ n - c arg Список конфигураций, разделенных запятыми, для включают. По умолчанию \ n - это все конфигурации. \ N --preferred-density arg Выбирает наиболее подходящую плотность и удаляет все остальные. \ N --product arg Список названий продуктов, разделенных запятыми, для сохранения \ n --output-to-dir Выводит содержимое APK в каталог, указанный параметром -o. \ N --no- xml -namespaces Удаляет префикс пространства имен XML и информацию URI \ n из двоичных файлов AndroidManifest. xml и XML в res / *. \ n --min-sdk-version arg Минимальная версия SDK по умолчанию для использования для AndroidManifest. xml. \ n --target-sdk-version arg Целевая версия SDK по умолчанию для использования для AndroidManifest. xml. \ n - version-code arg Код версии (целое число) для вставки в AndroidManifest. xml, если его нет \ n. \ n --version-code-major arg Основной код версии (целое число) для вставки в AndroidManifest. xml, если его нет \ n. \ n --version-name arg Имя версии для вставки в AndroidManifest. xml если ничего нет. \ n --replace-version Если указаны --version-code и / или --version-name, эти \ n значения заменят любое значение, уже содержащееся в манифесте. По \ n по умолчанию ничего не меняется, если в манифесте уже определены \ n эти атрибуты. \ N --compile-sdk-version-code arg Код версии (целое число) для вставки в AndroidManifest. xml если их нет \ n . \ n --compile-sdk-version-name arg Имя версии для внедрения в AndroidManifest. xml, если его нет. \ n --shared-lib Создает общую библиотеку времени выполнения Android. \ n --stati c -lib Создает библиотеку stati c Android. \ N --proto-format Создает скомпилированные ресурсы в формате Protobuf. \ N Подходит в качестве входных данных для инструмента создания пакета для создания пакета приложений. \ N --no -stati c -lib-packages Объединить все ресурсы библиотеки в пакете приложения. \ n --non-final-ids Генерирует R. java без модификатора final. Это подразумевается, когда указан \ n --stati c -lib. \ N --stable-ids arg Файл, содержащий список имен для сопоставления идентификаторов. \ N --emit-ids arg Создает файл по заданному пути со списком сопоставлений имен с идентификаторами, \ n подходит для использования с --stable-ids. \ n --private-symbols arg Имя пакета для использования при генерации R. java для частных символов. \ n Если не указано, publi c и частные символы будут использовать имя пакета приложения \ n. \ n --custom-package arg Пользовательский пакет Java, в котором будет генерироваться R. java. \ n --extra-packages arg Сгенерировать то же самое R. java, но с другими именами пакетов. \ N --add-javado c -annotation arg Добавляет аннотацию JavaDo c ко всем сгенерированным классам Java. \ N --output-text-symbols arg Создает текстовый файл, содержащий символы ресурсов класса R в \ n указанной папке. \ n --allow-reserved-package-id Позволяет использовать зарезервированный идентификатор пакета. Это следует использовать для \ n пакетов с pre-O min-sdk \ n \ n --auto-add-overlay Позволяет добавлять новые ресурсы в оверлеи без тегов \ n. \ N --rename-manifest-package arg Переименовывает пакет в AndroidManifest. xml. \ n --rename-Instrumentation-target-package arg Изменяет имя целевого пакета для инструментария. Наиболее полезно \ n при использовании вместе с --rename-manifest-package. \ N -0 arg Расширения файлов не сжимать. \ N --no-compress Не сжимать никакие ресурсы. \ N --warn-manifest-validation Рассматривайте явные ошибки проверки как предупреждения. \ n --split arg Разделить ресурсы, соответствующие набору конфигураций для разделенного APK. \ n Синтаксис: path / to / output.apk: [, [...]]. \ n В Windows используйте точку с запятой ';' разделитель. \ n -v Включает подробное ведение журнала. \ n --debug-mode Вставляет android: debuggable = \ "true \" в узел приложения в манифесте \ n, делая приложение доступным для отладки даже на производственных устройствах. \ n --strict-visibility Не разрешать наложения с разными уровнями видимости. \ n -h Отображает это меню справки \ n \ n "," tool ":" AAPT "} AAPT: unknown option '--proguard-minimal-keep -rules '.

ссылка aapt2 [параметры] -o arg --manifest arg files ...

Параметры: -o arg Выходной путь. --manifest arg Путь к Android манифест для сборки. -I arg Добавляет Android APK для связывания. -A arg Каталог ресурсов для включения в APK. Они не обрабатываются. -R arg Единица компиляции для связывания с использованием семантики overlay. Последний конфликтующий указанный ресурс имеет приоритет. --package-id arg Укажите идентификатор пакета, который будет использоваться для этого приложения. Должен быть больше или равен 0x7f и не может использоваться с --stati c -lib или --shared-lib. - java arg Каталог, в котором создается R. java. --Proguard arg Outpu t для сгенерированных правил Proguard. --proguard-main-dex arg Выходной файл для сгенерированных правил Proguard для основного dex. --proguard-conditional-keep-rules Сгенерировать условные правила хранения Proguard. --no-auto-version Отключает автоматическое c управление версиями SDK стилей и макетов. --no-version-vectors Отключает автоматическое c управление версиями векторных чертежей. Используйте это только при создании с помощью библиотеки поддержки векторных чертежей. --no-version-transitions Отключает автоматическое c управление версиями ресурсов перехода. Используйте это только при сборке с библиотекой поддержки переходов. --no-resource-deduping Отключает автоматическое c дедупликацию ресурсов с одинаковыми значениями в совместимых конфигурациях. --enable-sparse-encoding Уменьшает размер APK за счет производительности извлечения ресурсов. -x Флаг устаревшей версии, указывающий на использование идентификатора пакета 0x01. -z Требовать локализацию строк, помеченных как «предлагаемые». - c arg Список включенных конфигураций, разделенных запятыми. По умолчанию используются все конфигурации. --preferred-density arg Выбирает наиболее подходящую плотность и удаляет все остальные. --product arg Список сохраняемых названий продуктов, разделенных запятыми --output-to-dir Выводит содержимое APK в каталог, указанный параметром -o. --no- xml -namespaces Удаляет префикс пространства имен XML и информацию URI из двоичных файлов AndroidManifest. xml и XML в res / *. --min-sdk-version arg Минимальная версия SDK по умолчанию для использования для AndroidManifest. xml. --target-sdk-version arg Целевая версия SDK по умолчанию для использования для AndroidManifest. xml. --version-code arg Код версии (целое число) для вставки в AndroidManifest. xml, если его нет. --version-code-major arg Основной код версии (целое число) для вставки в AndroidManifest. xml, если его нет. --version-name arg Имя версии для вставки в AndroidManifest. xml, если его нет. --replace-version Если указаны --version-code и / или --version-name, эти значения заменят любое значение, уже содержащееся в манифесте. По умолчанию ничего не меняется, если в манифесте уже определены эти атрибуты. --compile-sdk-version-code arg Код версии (целое число) для вставки в AndroidManifest. xml, если его нет. --compile-sdk-version-name arg Имя версии для вставки в AndroidManifest. xml, если его нет. --shared-lib Создает общую библиотеку времени выполнения Android. --stati c -lib Создать библиотеку stati c Android. --proto-format Создает скомпилированные ресурсы в формате Protobuf. Подходит в качестве входных данных для инструмента создания пакета для создания пакета приложений. --no-stati c -lib-packages Объединить все ресурсы библиотеки в пакете приложения. --non-final-ids Создает R. java без модификатора final. Это подразумевается, когда указано --stati c -lib. --stable-ids arg Файл, содержащий список сопоставления имен и идентификаторов. --emit-ids arg Создает файл по заданному пути со списком сопоставлений имен и идентификаторов, подходящий для использования с --stable-ids. --private-symbols arg Имя пакета для использования при генерации R. java для частных символов. Если не указано иное, publi c и частные символы будут использовать имя пакета приложения. --custom-package arg Пользовательский Java пакет, в котором создается R. java. --extra-packages arg Сгенерировать тот же R. java, но с другими именами пакетов. --add-javado c -annotation arg Добавляет аннотацию JavaDo c ко всем сгенерированным Java классам. --output-text-symbols arg Создает текстовый файл, содержащий символы ресурсов класса R в указанной папке. --allow-reserved-package-id Позволяет использовать зарезервированный идентификатор пакета. Это следует использовать для пакетов с pre-O min-sdk

- auto-add-overlay Позволяет добавлять новые ресурсы в оверлеи без тегов. --rename-manifest-package arg Переименовывает пакет в AndroidManifest. xml. --rename-Instrumentation-target-package arg Изменяет имя целевого пакета для инструментария. Наиболее полезный при использовании вместе с --rename-manifest-package. -0 arg Расширения файлов не сжимать. --no-compress Не сжимать ресурсы. --warn-manifest-validation Обрабатывать манифестные ошибки проверки как предупреждения. --split arg Разделить ресурсы, соответствующие набору конфигураций для разделенного APK. Синтаксис: путь / к / output.apk: [, [...]]. На Windows используйте точку с запятой ';' разделитель вместо этого. -v Включает подробное ведение журнала. --debug-mode Вставляет android: debuggable = "true" в узел приложения манифеста, делая приложение доступным для отладки даже на производственных устройствах. --strict-visibility Не разрешать наложения с разным уровнем видимости. -h Отображает это меню помощи

Ответы [ 2 ]

3 голосов
/ 05 июня 2020

У меня была такая же проблема после обновления AS и плагина оценки, проблема в Gradle версии 6.1.1, попробуйте перейти на последнюю стабильную версию из структуры проекта до выпуска другой версии Gradle. Go в - файл -> структура проекта enter image description here

0 голосов
/ 30 мая 2020

Это обычная проблема. Попробуйте следующие решения basi c: (Проверьте, работает ли оно после каждого решения)

  1. File-> Invalidate Cache и перезапустите

  2. Сборка -> чистый проект.

  3. Удалите папку сборки из вашего кода.

  4. Убедитесь, что у вас есть обновлены все зависимости в файле Gradle

    на уровне проекта.

...