2014-10-17 32 views
68

我想升級我的項目以支持Android Lollipop和API 21,所以我將AppCompat版本依賴關係更改爲21.0.0, 和我的目標SDK 21.Lollipop AppCompat-v7 21 - 屬性「主題」已經定義

但現在,當我嘗試同步與gradle這個文件的項目,它給了我102 errors是以前沒有的:

錯誤 "Attribute 'theme' has already defined"

1 - 我的colors.XML文件中給出,

和另外101個"no resources found that matches the given name..."的錯誤 - 其中大部分是Materi al - 由"build/intermediates/exploded-aar/com.android.support/appcompat-v7/21.0.0/res/values-v11/values.XML"給出。

已經更新了Android SDK軟件中的所有SDK工具, 使用Android Studio 0.8.9 Beta。

任何人都可以幫忙嗎?謝謝。

+1

https://stackoverflow.com/questions/26431676/appcompat-v721-0-0-no-resource-found-that-matches-the-given-name-attr-andro – CommonsWare 2014-10-17 19:35:13

+0

根據問題更新您的SDK /回答以上鍊接 – gMale 2014-10-17 19:45:30

回答

122

我也有第一個問題。可以通過將Google Play服務依賴項更新爲6.1。+來解決此問題。

在搖籃(我希望你正在使用)是這樣的: 編譯「com.google.android.gms:發揮服務:6.1 +」

至於第二個問題 - 如人所說在評論中,您應該確保SDK安裝中的所有組件都是最新的。

+3

非常感謝!我改變了Google Play服務的依賴關係,它工作正常! – user3184899 2014-10-18 00:13:25

+0

我更新了所有組件,並且我沒有使用GPlay服務,但它仍然無法正常工作...您是否還有其他想法?編輯:改變了我所有的其他依賴替換版本號「+」,它的工作原理。請注意,這僅僅是一個臨時修復 – MathieuMaree 2014-10-18 12:36:53

+0

@ tilal6991對於我來說,上述任何迴應都不起作用,包括評論。我甚至試圖改變我的構建工具,但它沒有效果。 Heeeeelp !!!! :S – 2014-11-01 22:12:09

17

我有同樣的問題,但升級到最新版本沒有幫助。

但錯誤信息Attribute 「theme」 has already been defined改爲Attribute 「layout」 has already been defined

在谷歌Play服務的變化,我發現這個

<declare-styleable name="WalletFragmentOptions"> 
     <!-- Theme to be used for the Wallet selector --> 
-  <attr name="theme" format="enum"> 
+  <attr name="appTheme" format="enum"> 

這是關鍵。

如果您在attr.xml有屬性主題佈局也許別的東西 - 重命名。似乎合併無法處理它。

0

有時您使用的庫具有此屬性。我正在使用Sliding up panel庫,並且在構建時遇到了以下錯誤。我曾下列項目在我的依賴庫:

dependencies { 
    compile 'com.android.support:appcompat-v7:20.0.0' 
    compile 'com.sothree.slidinguppanel:library:+' 
    // ... 
} 

我通過移除滑動庫:(

+0

SlidingUpPanel中的這個問題現在已經修復。 – tokudu 2014-12-05 17:49:23

0

在我的項目添加新的活動後固定我的問題,這似乎是Android Studio中自動更新我的依賴關係,後出現什麼錯誤開始

我改變了以下相關的最新兼容庫:

compile 'com.android.support:support-v4:21.0.3' 
compile 'com.android.support:appcompat-v7:21.0.3' 

到我在我的gradle.build之前編輯它,但沒有問我:

compile 'com.android.support:support-v4:20.0.0' 
compile 'com.android.support:appcompat-v7:20.0.0' 

然後讓Studio進行同步,並且您的構建應該可以工作。

2

Android studio中的Gradle建議使用com.google.android.gms:play-services的最新版本。 將其更新至最新版本後,問題得到解決。

編譯​​

0

對於Eclipse的用戶:

因爲如果你遵循安裝gps的建議,你的工作區中只有一個副本,它不會獲得更新特德。