24.2兼容性处理
开始只能在Android5.0+系统上使用Vector功能,Androidgradleplugin 1.5发布以后,Androidbuild tools 提供了一种解决兼容性的方案:
如果编译的版本是5.0之前的版本,那么build tools 会把VectorDrawable生成对应的png图片,这样在5.0以下的版本则使用的是生成的png图。
在5.0以上的版本中使用VectorDrawable。
在build.gradle添加generatedDensities配置,可以配置生成的png图片的密度。
从AppCompat23.2开始,Vector可以使用于Android 2.1以上的所有系统,只需要引用com.android.support:appcompat-v7:23.2.0以上的版本就可以了,加入了向下兼容的库:VectorDrawableCompat和AnimatedDrawableCompat。
具体Gradle代码,使用Gradle Plugin2.0以上:
android{
defaultConfig {
vectorDrawables.useSupportLibrary =true
//只生成密度为mdpi的png图片
//vectorDrawables.generatedDensities= ['mdpi']
}
}
使用GradlePlugin 2.0以下,GradlePlugin 1.5以上:
android{
defaultConfig {
// 生成各种密度的png图片
vectorDrawables.generatedDensities = []
}
// Flag to tell aapt to keep the attributeids around
aaptOptions {
additionalParameters"--no-version-vectors"
}
}
添加appcompat的支持:
compile'com.android.support:appcompat-v7:23.4.0'
确保使用的是AppCompatActivity而不是普通的Activity。
参考:http://blog.csdn.net/qq_15545283/article/details/51472458
http://blog.csdn.net/eclipsexys/article/details/51838119