Подтвердить что ты не робот

"aapt.exe" вышел с кодом 1 при создании Mono для Android-проекта

Я собрал довольно простое приложение Mono для Android, которое ничего не делает, как воспроизводить MP3 файлы AndroidResource в фоновом режиме (скопировано из Greg Shackles last Visual Studio Magazine статья о фоновых услугах в MfA). Я поместил код вместе со своим собственным MP3 файлом и попытался его построить, только чтобы получить эту прекрасную ошибку.

"aapt.exe" exited with code 1

Это единственная информация в списке ошибок и сборка выходного журнала.

4b9b3361

Ответ 1

Шаг 1: получите дополнительную информацию

Если вы столкнетесь с этой ошибкой, надеюсь, вы также столкнетесь с сообщением от Джонатана Прайра, отвечая кому-то другому с той же проблемой. Предложение состоит в том, чтобы включить более подробное ведение журнала из MSBuild, чтобы узнать, получаете ли вы что-то полезное из этих сообщений.

В диалоговом окне "Параметры Visual Studio" перейдите к "Проекты и решения", затем "Построить и запустить". Переключите "многословность сборки проекта MSBuild" с "Minimal" на "Normal" и снова создайте проект. После этого я получил это сообщение, которое было гораздо более полезным. По-видимому, ресурсы не могут включать ничего, кроме букв, цифр, периодов и подчеркиваний ([a-z0-9_.]).

MSBuild normal verbosity logging

Решение

Переименуйте файл в требуемые ограничения и снова создайте.

Хотя это сообщение об ошибке может возникнуть в гораздо большем количестве ситуаций, чем проблемы ограничения имен файлов, изменение имени файла полностью исправило эту проблему.

Ответ 2

Аналогичное решение для меня, мне нужно было удалить тире ('-') из моих PNG файлов в папке ресурсов

Ответ 3

В проектах Mono.Android эта ошибка возникает, когда файл axml Resource/Layout имеет пробелы в имени, например. "Копировать xxxx.xaml"

Ответ 4

В проектах Mono.Android эта ошибка может возникнуть, когда имя ресурса /Drawable имеет имя - в имени, например: "File-Name.png попробуйте с подчеркиванием: "File_Name.png"

Ответ 5

Да, не забудьте:

  • Ресурсы, изображения, активы, макет axml, начинающийся с mumbers
  • Чтобы проверить имена файлов с пробелами. (У меня была эта проблема. Один из моих макетов имел конечное пространство перед расширением ".axml" )
  • Чтобы проверить, есть ли у любого из ваших изображений, ресурсов, файлов, макетов или других объектов дефис (-). Они не должны быть там.

Ответ 6

Для меня это была проблема с именем ресурса. Одна из моих фотографий была из MonoTouch, и поэтому ее имя файла включало "@2x" в имени файла. После удаления этого файла aapt.exe больше не жаловался и решение было создано.

Ответ 7

Чтобы определить проблему, выполните следующие действия:

1 - В Visual Studio: Инструменты > Параметры > Проекты и решения > Сборка и запуск.

1.1 - В раскрывающемся списке: многострочный вывод сборки проекта MSBuild: > Диагностика.

1.2 - Закройте диалоговое окно.

2 - Вид > Вывод (Ctrl + W, O).

3 - Запустите сборку или восстановление.

На выходе найдите эту строку:

C:\Program Files (x86)\MSBuild\Xamarin\Android \ Xamarin.Android.Common.targets(1665.3): ошибка MSB6006 "aapt.exe" вышел с кодом 1

То, что находится выше этой ошибки, является причиной ошибки.

Ответ 8

Проверьте свои изображения /png в папке "Допустимые". Это дало мне ошибку из-за изображения png, как только оно исключено из проекта. Прекрасно работает...

Ответ 9

Я разрешил это, удалив портативную библиотеку, которая содержит бизнес-логику от андроида, а затем перестроит ее отдельно. После восстановления, очистите свой проект Android и снова добавьте ссылку в свою портативную библиотеку классов. Наконец, создайте проект андроида