APP开发实战92-静态Vector兼容性处理

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

你可能感兴趣的:(APP开发实战92-静态Vector兼容性处理)