18

Android projemde bir kütüphane olarak android-support-v7-appcompat kullanıyorum. Şimdi actionbarsherlock'u başka bir kütüphane projesi olarak eklemek istiyorum. İkinci kütüphane eklediğinizde, bir öznitelik değeri değiştirerek hatası: Android'de iki kütüphane projesi kullanırken "***" özelliği zaten tanımlanmıştı

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

gibi pek çok hatalar verir ve ilgili kod parçacığı ben denedim bir tek çözümdür bu. Fakat yukarıdaki gibi yaklaşık 80 satır olduğunda, dağınık olur. Bu sorunu çözebileceğim başka bir yol var mı?

+1

Bu cevap değil. Ama benim durumumda, ActionBar özelliklerini elde etmek için her iki kütüphanenin üzerinde de kullandım. Bu yüzden ** android-support-v7-appcompat ** 'i kaldırdım ve devam ettim. – AnujAroshA

cevap

9

Bu sorunu çözmek için doğru yol, tüm ilgili projelerde ve kitaplık projelerinde Android Destek Kitaplıkları güncellenmesidir. Benim durumumda, Android destek kütüphanesi ve uygulamanızı uygulamak için kütüphane projelerinden birini kullandım. Her iki kütüphaneyi de güncellediğimde sorun çözüldü. Android destek kütüphanesini güncelleme yolu;

  • Sağ proje
  • Seç Android Araçlar pop up penceresi gelen tıklayın
  • Seç ekle Destek Kitaplığı
+2

Bu benim için çalışmıyor.Ben AnujAroshA aynı şeyi deniyorum - android-destek-v7-appcompat yanı sıra ActionBarSherlock bir kütüphane olarak kullanarak. Aynı hatayı alıyorum. Önerdiğiniz gibi destek kitaplıklarını güncelledim (ve bunu biliyordum) ve daha sonra üç projeyi de temizledim. Şanssız. – marienke

+2

İçe aktardığım kitaplığı nasıl güncelleyebilirim? Bu sadece bir "derleme" libraryhere "'ifadesidir. – Tiago

1

ben den appcompact kaldırarak bu çözüldü proje ve stillerde değişiklik yapma

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

Gradle Kaynak Birleşme bütün bağımlılıkları gelen tüm kaynak klasörleri birleştirir Özellikleri gelen appcompact destek kitaplığı projesi çıkarın ve tek bir klasöre yerleştirin. Çoğaltma durumunda, işlem başarısız olur.

Neyse ki, eğer Çıkış: etiketi altında görüyorsanız, sorunun doğru yolunu bulacaksınız.

Burada da komut satırından projenizi oluşturmak ve doğru yolu alabilirsiniz android-support-v7-appcompat\res\values\attrs.xml:476: error: Attribute "attributeName" has already been defined

olan sizin durumunuzda bir örnek

enter image description here

olduğunu. attributeName İçinde values\attrs.xml dosya 476 numaralı satırda "attributeName" isimli bir özellik bulacaksınız. Muhtemelen, kopyadan kurtulmak için değiştirmeniz gereken kendi stilinizdir.

Şimdi, nedenini öğrendiğinizde, bu özelliği proje modülünüzde bulabilir ve farklı adla değiştirebilirsiniz.

0

Oluşturma araçları sürümünü güncelleştirdim ve yeniden senkronize edildi, iyi çalıştı.