24.2兼容性處理
開始只能在Android5.0+系統(tǒng)上使用Vector功能,Androidgradleplugin 1.5發(fā)布以后我碟,Androidbuild tools 提供了一種解決兼容性的方案:
如果編譯的版本是5.0之前的版本档礁,那么build tools 會把VectorDrawable生成對應的png圖片歪玲,這樣在5.0以下的版本則使用的是生成的png圖秕衙。
在5.0以上的版本中使用VectorDrawable蠢甲。
在build.gradle添加generatedDensities配置,可以配置生成的png圖片的密度据忘。
從AppCompat23.2開始鹦牛,Vector可以使用于Android 2.1以上的所有系統(tǒng)搞糕,只需要引用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