webentwicklung-frage-antwort-db.com.de

Android Studio - Ressourceneintrag bereits definiert

Nach dem Kompilieren meiner Android-Anwendung mit dem Android Studio (Beta) habe ich die folgende Fehlermeldung:

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

Dies geschah, als ich eine Bilddatei mit dem Namen "background" in meinem res-Ordner hatte. 

Ich habe dann eine 9-Patch-Version davon erstellt und im selben Ordner eingefügt. Dies bedeutete, dass es 2 Dateien mit demselben Namen gab. Es war also nicht überraschend, dass ich diesen Fehler hatte. 

Nun habe ich jedoch alle Instanzen der Hintergrundbilddatei (einschließlich der 9-Patch-Version und des Originalbilds) in meinem Code und meiner Layoutdatei gelöscht, und ich habe immer noch diesen Fehler. 

22
Yahya Uddin

Sie können versuchen, eine der folgenden Aktionen auszuführen:

  • Clean and Build oder gradle clean build assemble
  • Invalidieren und starten Sie Android Studio neu
60
deubaka

1 Build> Projekt bereinigen  
2 Erstellen> Projekt neu erstellen

17
Enaoi

Ich benutze Android Studio und stoße genau auf dasselbe Problem. Keine der Antworten, die ich im Internet gefunden habe, hat mir geholfen, das Problem zu lösen, einschließlich der vorherigen. Lesen Sie also alle Details der Fehlermeldungen und finden Sie folgende Zeilen:

Fehler: Ausführung fehlgeschlagen für Task ': app: processDebugResources'.

com.Android.ide.common.internal.LoggedErrorException: Fehler beim Ausführen des Befehls: C:\Benutzer\Benutzer\AppData\Local\Android\android-studio\sdk\build-tools\Android-4.4W\aapt.exe Paket -f --no-crunch -IC:\Benutzer\Benutzer\AppData\Local\Android\android-studio\sdk\platform\Android-20\Android.jar -MC:\Benutzer\Benutzer\AndroidStudioProjects\DartsApp\app\build\intermediates\manifests\debug\AndroidManifest.xml -SC:\Benutzer\Benutzer\AndroidStudioProjects\DartsApp\app\build\intermediates\res\debug -AC:\Benutzer\Benutzer\AndroidStudioProjects\DartsApp\app\build\intermediates\assets\debug -m -JC:\Benutzer\Android\Studio\AndroidStudioProjects\DartsApp\app\build\generated\source\r\debug -FC:\Benutzer\Benutzer\AndroidStudioProjects\DartsApp\app\build\intermediates\libs\app-debug.ap_ --debug-mode --custom-package com.dartstransit.dartsapp -0 apk --Ausgabetext-Symbole C:\Benutzer\Benutzer\AndroidStudioProjects\DartsApp\App\Build\Intermediates\Symbole\Debug

Fehlercode:

1

Ausgabe:

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.

Wie Sie sehen, befinden sich zwei Dateien mit dem Namen bus_w mit unterschiedlichen Erweiterungen im selben Ordner. Ich hatte diese Dateien bereits aus dem Projekt entfernt und erhielt immer noch den Fehler. Daher entschied ich mich, jeden einzelnen Ordner des Projekts zu überprüfen, der in der Compilerzeile in der Fehlernachricht angegeben war. Schließlich wurde festgestellt, dass sich im Ordner app\build\intermediates\res\debug\drawable-mdpi-v4 eine Kopie der Datei bus_w.png befand.

Ich habe es gerade gelöscht und voila, Problem gelöst.

9
zaidorx

Ein einfaches Build > Rebuild-Projekt hat mir geholfen

3
penduDev

Haben Sie versucht, diese Datei in einen anderen Namen umzubenennen? Es scheint, dass eine Ihrer Bibliotheken dieselbe Ressource hat.

Ich sehe, dass viele Entwickler (ich eingeschlossen) Probleme mit ic_launcher hatte. Ich denke, Sie möchten mipmap statt drawable ausprobieren. Also werden wir so etwas haben:

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

Ich hoffe das hilft.

1
khaintt

Ich habe auch diesen Fehler in letzter Zeit festgestellt. Hier ist meine Lösung, die funktioniert, hoffe, es wird Ihnen helfen.

1. Bewahren Sie nur ein Image mit 9 Patch-Versionen im drawable-hdpi-Ordner auf

2.Stellen Sie sicher, dass der Code, der sich auf dieses Problem in der XML-Datei bezieht, derselbe bleibt: Android:background="@drawable/msg_left"

anstatt den Code zu verwenden:

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

PS: Mein ursprünglicher Image-Name ist msg_left und der Image-Name meiner 9-Patch-Version ist msg_left.9

0
Jeffin Bao

In unserem Fall trat ein Problem auf (Fehler zeigt "doppelten Wert für Ressource" in einer Bibliothek an), wenn eine andere Bibliothek auf ihre neueste Version aktualisiert wurde.
Wir haben gerade die aktualisierte Version der Bibliothek heruntergestuft.

Der eigentliche Schmerz war, dass wir viele Abhängigkeiten haben, die dynamisch aktualisiert werden können, wenn eine neue Version in Repositorys verfügbar ist. Mein Teamkollege musste also alle Bibliotheken durchlaufen, die dynamisch aufgerüstet werden können, um zu sehen, ob eine kürzlich aktualisiert wurde. Versuchen Sie, sie herunterzustufen, und prüfen Sie, ob der Build einwandfrei funktioniert. Er stellte fest, dass viele am Vortag aufgewertet wurden. Das Herabstufen eines von ihnen brachte den Build zurück.

Die Schlussfolgerung, die wir gemacht haben, ist die Verwendung von Dynamic Versioning. Verwenden Sie keine dynamischen Versionen für Ihre Abhängigkeiten

Das war übrigens der Fehler: 

Aufgabe: app: generateDebugResources UP-TO-DATE AGPBI: {"kind": "error", "text": "error: doppelter Wert für Ressource\u0027attr/itemBackground\u0027 mit config\u0027\u0027.", "Sources": [{"file": "/ Users /unknownuser/.gradle/caches/transforms-1/files-1.1/singledateandtimepicker-1.2.2.aar/86ae3786d70c769e610c8a01d58aa66/res/values/values.xml","position":{"startLine":15" 4, "startOffset": 2427, "endColumn": 48, "endOffset": 2471}}], "original": "", "tool": "AAPT"} AGPBI: {"kind": "error", "text": "error: Ressource, die zuvor hier definiert wurde.", "Sources": [{"file": "/ Users/unknownuser/.gradle/caches/transforms-1/files-1.1/singledateandtimepicker-1.2.2.aar/86ae3786d70c769e610c8a01d58aa638/res/values ​​/ values.xml "," position ": {" startLine ": 15," startColumn ": 4," startOffset ": 2427," endColumn ": 48, "endOffset": 2471}}], "original": "", "tool": "AAPT"}

Aufgabe: app: mergeDebugResources FAILED Fehler: Java.util.concurrent.ExecutionException: com.Android.builder.internal.aapt.v2.Aapt2Exception: AAPT2-Fehler: Überprüfen Sie die Protokolle auf Details

FEHLER: Die Erstellung ist mit einer Ausnahme fehlgeschlagen.

0
cgr

Ich habe den Trick gemacht, indem ich das Symbol verschoben habe

drawable/ic_launcher

zu 

mipmap/ic_launcher

und es hat gut funktioniert :)

0
Miao1007

In meinem Fall bestand das Problem darin, dass ich mehr als eine. Hatte. im Dateinamen mögen:

a.png
a.bold.png

Lösung sollte umbenannt werden

a.png
a_bold.png
0
MrSmith42