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

Android Studio - запись ресурсов уже определена

После компиляции моего приложения Android с помощью Android Studio (бета-версия) у меня есть следующая ошибка:

Error:error: Resource entry background is already defined.
res\drawable-xhdpi-v4\background.9.png:0: Originally defined here.

Это произошло, когда у меня был файл с изображениями под названием "фон" в папке res.

Затем я сделал 9 версий патчей и вставил их в одну папку. Это означало, что было 2 файла с тем же именем. Поэтому я, неудивительно, имел эту ошибку.

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

4b9b3361

Ответ 1

Вы можете попытаться выполнить одно из следующих действий:

  • Очистить и построить или gradle clean build assemble
  • Отменить и перезапустить Android Studio

Ответ 2

1 Сборкa > Чистый проект
2 Сборкa > Проект перестройки

Ответ 3

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

Ошибка: выполнение выполнено для задачи ': app: processDebugResources'.

com.android.ide.common.internal.LoggedErrorException: Не удалось выполнить команду:     C:\Users\user\AppData\Local\Android\android-studio\sdk\build-tools\android-4.4W\aapt.exe package -f -no-crunch -IC:\Users\user\AppData\Local\Android\android-studio\sdk\platform\android-20\android.jar -MC:\Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\manifestests\debug\AndroidManifest.xml -SC:\Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\res\debug -AC:\Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\assets\debug -m -JC:\Users\user\AndroidStudioProjects\DartsApp\app\build\generated\source\r\debug -FC:\Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\libs\app-debug.ap_ --debug-mode --custom-package com.dartstransit.dartsapp -0 apk --output-text-symbols C:\Users\user\AndroidStudioProjects\DartsApp\app\build\intermediates\symbols\debug

Код ошибки:

1

Вывод:

res\drawable-hdpi-v4\bus_w.png:0: error: Resource entry bus_w is already defined.
res\drawable-hdpi-v4\bus_w.jpg:0: Originally defined here.

Как вы можете видеть, есть два файла с именем bus_w с разными расширениями в одной папке. Я уже удалил эти файлы из проекта и все еще получаю ошибку, поэтому решил проверить каждую отдельную папку проекта, которая была ссылкой в ​​строке компилятора в сообщении об ошибке. Наконец выяснилось, что в папке app\build\intermediates\res\debug\drawable-mdpi-v4 была копия файла bus_w.png.

Я просто удалил его и вуаля, проблема решена.

Ответ 4

Простой Build > проект перестройки помог мне

Ответ 5

Вы пытались переименовать этот файл в другое имя? Кажется, одна из ваших библиотек имеет тот же ресурс.

Я вижу, что у многих разработчиков (включая меня) возникла проблема с ic_launcher. Я думаю, вы хотите попробовать mipmap вместо drawable. Итак, у нас будет что-то вроде этого:

\res\mipmap-hdpi
\res\mipmap-mdpi
\res\mipmap-xhdpi
\res\mipmap-xxhdpi

Надеюсь на эту помощь.

Ответ 6

Я тоже недавно столкнулся с этой ошибкой. Вот мое решение, которое работает, надеюсь, что это поможет вам.

1. сохраните только 9 изображений версии патча в папке drawable-hdpi

2. Убедитесь, что код, связанный с этой проблемой в xml файле, остается тем же: android:background="@drawable/msg_left"

вместо использования кода:

android:background="@drawable/msg_left.9"

PS: Моим первоначальным именем изображения является msg_left, а мое имя версии с 9 версиями патчей - msg_left.9

Ответ 7

Я сделал трюк, переместив значок

drawable/ic_launcher

to

mipmap/ic_launcher

и он работал нормально:)