16

我有問題需要了解支持庫的版本方案以及何時使用哪個版本。目前我有一個項目compileSdkVersion 21,minSdkVersion 21targetSdkVersion 21並且想使用android設計支持庫。 當我使用com.android.support:design:22.2.0項目編譯,但我得到一個搖籃警告:設計支持庫 - 使用SDK v21的哪個版本

"This support library should not use a different version (22) than the `compileSdkVersion` (21)". 

當我使用com.android.support:design:23.0.1我得到一些編譯錯誤,如:

"Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'. 

我以爲我可以一直使用最高版本支持庫只要compileSdkVersion低於或等於,但這似乎是錯誤的。

編譯API級別21時可以使用設計支持庫嗎?

+0

你只能在你的情況下使用的版本直至幷包括你的'compileSdkVersion',所以21 –

回答

23

即使targetSdkVersionminSdkVersion較低,支持庫也應始終匹配compileSdkVersion。如果要使用設計庫,則需要將compileSdkVersion設置爲至少22,並將庫設置爲22.2.0。

原因很簡單。該庫的版本反映了它構建的Android sdk版本。如果您嘗試使用比compileSdkVersion更高級別的支持庫,則可能無法找到在較新版本中添加的資源。

19

您可以使用下列操作之一:

//You have to use compileSdkVersion=22 
compile 'com.android.support:design:22.2.0' 
compile 'com.android.support:design:22.2.1' 

//You have to use compileSdkVersion=23 
compile 'com.android.support:design:23.3.0' 
compile 'com.android.support:design:23.2.1' 
compile 'com.android.support:design:23.2.0' 
compile 'com.android.support:design:23.1.1' 
compile 'com.android.support:design:23.1.0' 
compile 'com.android.support:design:23.0.1' 
compile 'com.android.support:design:23.0.0' 

設計庫與程序兼容性-V7庫的依賴。
不能使用v23.0.x版的API編制22(它是"Error:(2) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Inverse'的原因。

而且,因爲設計庫的第一個版本是22,你不能使用 compileSdk = 21

+1

我在哪裏可以看到所有版本特別支持庫 –

+1

@BharatDodeja這裏的完整列表:?HTTP ://developer.android.com/tools/support-library/index.html –