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 –