18

Ich verwende android-support-v7-appcompat als eine Bibliothek in meinem Android-Projekt. Jetzt möchte ich actionbarsherlock als ein anderes Bibliotheksprojekt einschließen. Wenn ich die zweite Bibliothek hinzuzufügen, gibt es so viele Fehler wie untenFehler: Attribut "***" wurde bereits bei der Verwendung von zwei Bibliotheksprojekten in Android

android-support-v7-appcompat\res\values\attrs.xml:476: error: Attribute "attributeName" has already been defined 

Durch einen Attributwert zu ändern, und es ist im Zusammenhang Code-Schnipsel eine eine Lösung ist, die ich ausprobiert habe. Aber wenn es fast 80 Zeilen wie oben gibt, wird es sehr unordentlich. Gibt es eine andere Möglichkeit, dieses Problem zu lösen?

+1

Dies ist nicht die Antwort. Aber in meinem Fall habe ich oben beide Bibliotheken verwendet, um die ActionBar-Funktionen zu erhalten. Also habe ich ** android-support-v7-appcompat ** entfernt und fortgefahren. – AnujAroshA

Antwort

9

Die korrekte Lösung dieses Problems besteht in der Aktualisierung der Android-Unterstützungsbibliotheken in allen relevanten Projekten und Bibliotheksprojekten. In meinem Fall habe ich die Android-Unterstützungsbibliothek und auch eines der Bibliotheksprojekte verwendet, um meine Anwendung zu implementieren. Wenn ich beide Bibliotheken aktualisiere, ist das Problem gelöst. Die Art der Aktualisierung der Android-Support-Bibliothek ist:

  • rechts auf das Projekt klicken
  • Select Android Tools aus dem Pop-up-Fenster
  • Select Support Bibliothek hinzufügen
+2

Dies funktioniert nicht für mich.Ich versuche das gleiche wie AnujAroshA - mit Android-Unterstützung-v7-appcompat als eine Bibliothek sowie ActionBarSherlock. Ich bekomme den gleichen Fehler. Ich habe die Support-Bibliotheken aktualisiert, wie Sie es vorgeschlagen haben (und das wusste ich), und dann alle drei Projekte bereinigt. Kein Glück. – marienke

+2

Wie kann ich die Bibliothek, die ich importiere, aktualisieren? Es ist nur eine "Compile" -Bibliothek. – Tiago

1

Ich löste dies durch appcompact Entfernen von Projekt und Ändern in Stilen zu

<style name="AppBaseTheme" parent="Theme.Sherlock"> 
3

Entfernen Sie das appcompact Unterstützung Bibliotheksprojekt von Eigenschaften =>Android

3

Gradle Ressourcen Merger alle Ressourcenordner aus allen Abhängigkeiten aufnehmen und in einzelne Ordner übergehen. Falls es Duplikate gibt, wird der Build-Prozess fehlschlagen.

Zum Glück, wenn Sie unter Ausgabe: Etikett schauen, finden Sie den richtigen Weg zu dem Problem.

Hier ist ein Beispiel

enter image description here

in Ihrem Fall ist es android-support-v7-appcompat\res\values\attrs.xml:476: error: Attribute "attributeName" has already been defined

Sie können auch Ihr Projekt von der Kommandozeile bauen und den richtigen Weg zu bekommen. attributeName Inside values\attrs.xml Datei auf Zeile 476 würden Sie eine mit der Eigenschaft namens "attributeName" finden. Höchstwahrscheinlich ist es Ihre eigene styleable, die Sie ändern müssen, um das Duplikat loszuwerden.

Wenn Sie nun den Grund kennen, können Sie diese Eigenschaft in Ihrem Projektmodul suchen und durch einen anderen Namen ersetzen.

0

Ich aktualisierte die Build-Tools-Version und resynchronisiert, es hat gut funktioniert.