Android Support v4\v7\v13和AndroidX理解【转载】

 

为什么要用support库呢?

因为在低版本Android平台上开发一个APP时,想使用高版本才有的功能,此时就需要使用Support来支持兼容。

1. android-support-v4 

compile "com.android.support:support-v4

2011年4月份,谷歌推出最低兼容到1.6版本系统的包。

eclipse新建工程时,都默认包含了,里面有类似Fragment,NotificationCompat,LoadBroadcastManager,ViewPager,PageTabAtrip,Loader,FileProvider  等等控件。

V4包含了V7和V13的基础功能。

2. android-support-v7

compile "com.android.support:appcompat-v7:xx.xx"

2014年 I/O大会时推出,最低兼容Android2.1系统。

最新的v7包增加了很多material design的兼容类和素材,其中涉及的内容有Theme、value、布局、新的控件、新的动画实现方式,包含了support-v4的全部内容。

android studio在创建工程的时候默认导入了v7工程,并且将style使用了兼容style。

3. android-support-v13

为平板开发推出的版本兼容包,最低兼容Android3.2的系统。可以说Android 3.x系统都是平板专用系统。

4. androidX 

 从android9.0 (API28)开始, support库将会进行改动, V7: 28.0.0将会是support库的终结版本。未来新的特性和改进都会进入Androidx包。其主要原因是support库的命名已经越来越令人迷惑 ,包越来越臃肿。

依赖包的变化从:api 'com.android.support:appcompat-v7:28.0.0'

变成了:api 'androidx.appcompat:appcompat:1.0.0'

需要注意的是,build.gradle中的插件版本要在3.2.0以上才可以。

如果项目中包含的第3方包中引用了support包,而又想使用androidX,则可以进行如下配置:

android.useAndroidX=true

android.enableJetifier=false

Android Studio就提供了sopport转androix的能力;需要先在gradle.properties 文件中加入配置:

android.useAndroidX=true

android.enableJetifier=true

然后

posted @ 2019-11-25 08:23  江左盟  阅读(1023)  评论(0编辑  收藏  举报