android - tutorial - Biblioteca de soporte de diseño-Qué versión usar con SDK v21
material design android tutorial (2)
Puedes usar uno de estos:
//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''
La biblioteca de diseño tiene dependencia con la biblioteca appcompat-v7.
No puede usar la versión v23.0.x que compila con la api 22 (es la razón de "Error:(2) Error retrieving parent for item: No resource found that matches the given name ''android:TextAppearance.Material.Widget.Button.Inverse''
.
Además, dado que la primera versión de la biblioteca de diseño es 22, no puede usar compileSdk = 21.
Tengo problemas para entender el esquema de versión de las bibliotecas de soporte y cuándo usar qué versión. Actualmente tengo un proyecto con compileSdkVersion 21
, minSdkVersion 21
y targetSdkVersion 21
y quiero usar la biblioteca de soporte de diseño de Android. Cuando uso com.android.support:design:22.2.0
el proyecto se compila pero recibo una advertencia de Gradle:
"This support library should not use a different version (22) than the `compileSdkVersion` (21)".
Cuando uso com.android.support:design:23.0.1
obtengo algunos errores de compilación como:
"Error:(2) Error retrieving parent for item: No resource found that matches the given name ''android:TextAppearance.Material.Widget.Button.Inverse''.
Pensé que puedo usar siempre la versión más alta de las bibliotecas de soporte siempre que compileSdkVersion
sea inferior o igual, pero eso parece incorrecto.
¿Puedo usar la biblioteca de soporte de diseño al compilar en el nivel 21 de API?
Support Library siempre debe coincidir con compileSdkVersion
incluso si targetSdkVersion
o minSdkVersion
son más bajos. Si desea utilizar la biblioteca de diseño, deberá configurar compileSdkVersion
en al menos 22 y la versión de biblioteca 22.2.0.
La razón para eso es simple. La versión de la biblioteca refleja la versión de Android sdk contra la que se creó. Si intenta usar una versión de nivel superior de la biblioteca de soporte que compileSdkVersion
es posible que no encuentre recursos que se agregaron en una versión posterior.