Android Support v4\v7\v13和AndroidX的区别及应用场景
前言
Google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如Fragement,ViewPager等。我们常见的Android Support V4, V7, V13是什么呢?其实本质上就是三个java library。为什么要用support库呢?因为在低版本Android平台上开发一个APP,又想使用高版本才拥有的功能,就需要使用Support来支持兼容。下面简单说明下这几个版本间的区别。
android-support-v4 ——2011年4月份推出
compile "com.android.support:support-v4
是谷歌推出最低兼容到1.6版本系统的包。eclipse新建工程时,都默认带有了,里面有类似Fragment,NotificationCompat,LoadBroadcastManager,ViewPager,PageTabAtrip,Loader,FileProvider 等等控件。它包含了V7和V13太多基础功能。
android-support-v7——2014年的I/O大会推出
compile "com.android.support:appcompat-v7:
是谷歌推出的版本兼容包,最低兼容Android2.1的系统。最新的v7包增加了很多material design的兼容类和素材,其中涉及的内容有Theme,value,布局,新的控件,新的动画实现方式,包含了support-v4的全部内容。android studio在创建工程的时候默认导入了v7工程,并且将style使用了兼容style,给开发者提供了极大的方便。另外注意,v7是要依赖v4这个包的,即,两个得同时添加依赖。
v7版本适用于任何版本的开发,保证了兼容性,所以推荐采用。另外,不要再用Eclipse做Android开发,ADT已经没有更新过了,目前 Android Studio 是Android开发的首选工具,更好的开发享受。
android-support-v13
是谷歌为平板开发推出的版本兼容包,最低兼容Android3.2的系统。当初是为了开发平板做设计的,可以说Android 3.x系统都是平板专用系统,但是3.x系统失败了,所以使用v13的包没有任何价值。
androidX
从android9.0 ,API28开始, android的support库将会进行改进, V7: 28.0.0将会是support库的终结版本。未来新的特性和改进都会进入Androidx包。为什么要进行如此大规模的革新?主要原因是support库的命名已经越来越令人迷惑 ,包越来越臃肿。
依赖包的变化,如下:
api 'com.android.support:appcompat-v7:28.0.0'
变成了:
api 'androidx.appcompat:appcompat:1.0.0'
如何过渡到AndroidX?
前提是你的项目build.gradle中的插件版本要在3.2.0以上. 这也意味着你的android studio版本不能太低。
classpath 'com.android.tools.build:gradle:3.2.0+'
然后,项目中肯定有第三方依赖,而且现在很多依赖都是使用sopport 包。官方博客中有说道,为了给开发者一定迁移的时间,所以28.0.0的稳定版本还是采用android.support
。但是所有后续的功能版本都将采用androidx
。如果你想使用AndroidX,但是之前的不迁移,可以这样配置:
android.useAndroidX=true
android.enableJetifier=false
Android Studio就提供了sopport转androix的能力;需要先在gradle.properties 文件中加入配置:
android.useAndroidX=true
android.enableJetifier=true
上面工作完成后,那么恭喜你,你的项目已经进入androix时代了 。
Android Support v4\v7\v13和AndroidX的区别及应用场景相关推荐
- android.support.v4作用,Android Support V4, V7, V13的作用与用法
1, Android Support V4, V7, V13是什么? 本质上就是三个java library. 2, 为什么要有support库? 如果在低版本Android平台上开发一个应用程序, ...
- android support v7 v13,Android support V3 v7 v13的差别
Android support V3 v7 v13的区别 简单翻译: V4用于1.6到更高的API使用. V7是2.1到更高的API使用,其中包含ACtionBar. V13是3.2到更高的API的使 ...
- android support v7 v13,Android support V3 v7 v13的区别
简单翻译: V4用于1.6到更高的API使用. V7是2.1到更高的API使用,其中包含ACtionBar. V13是3.2到更高的API的使用. 原文: v4 Support Library Thi ...
- Android support V3 v7 v13的区别
简单翻译: V4用于1.6到更高的API使用. V7是2.1到更高的API使用,其中包含ACtionBar. V13是3.2到更高的API的使用. 原文: v4 Support Library Thi ...
- android support v4、v7、v13
android support v4.v7.v13的区别及作用和用法 1, Android Support V4, V7, V13是什么? 本质上就是三个java library. 2, 为什么要有s ...
- android项目迁移到androidX:类映射(android.support.v4*)
支持库类 AndroidX 类 android.support.v4.accessibilityservice.AccessibilityServiceInfoCompat androidx.core ...
- Android Support v4、v7、v13的区别和应用场景
google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性,如fr ...
- Android Support v4、v7、v13 介绍
google提供了Android Support Library package 系列的包来保证来高版本sdk开发的向下兼容性,即我们用4.x开发时,在1.6等版本上,可以使用高版本的有些特性, ...
- android v4 v7 v14,Android Support v4、v7、v13、v14、v17的区别和应用场景
在我刚开始学习Android的时候,我是不清楚这几个包是拿来干嘛的,于是到网上找答案,发现基本上说的是v4.v7.v13的. 剩下的v14和v17到底是啥?不知道. 于是就一直没理会,因为开发的时候也 ...
最新文章
- Nginx源代码分析 - 日志处理
- [原创].NET 业务框架开发实战之十 第一阶段总结,深入浅出,水到渠成(前篇)...
- 云服务器和VPS服务器有什么区别?
- 深度linux引导安装,全程演示Linux Deepin 12.06安装过程
- ssh登录命令(转)
- 『数学』你确定你学会了勾股弦定理!真的吗?看完这个篇文章再回答我!
- 利用Caffe实现mnist的数据训练
- 读《编程之美》读后感3
- Spring Security xsd 异常
- 数据结构严蔚敏 栈基本操作 C语言实现
- ue编辑器绿色免安装版
- maya的颤动怎么做_为什么maya视窗跳动闪烁
- 字符设备、块设备、网络设备详解
- MAC 扩展屏,颜色描述文件
- 关于Jetson TX2刷机各种问题(刷机后键盘等等奇葩错误)
- 台式计算机启动时 每次按f1,电脑开机每次都要按f1怎么办|电脑开机要按f1的解决方法...
- 智能科学与技术 毕业设计怎么做 - 选题推荐 - 疑问解答
- 天才小毒妃 第961章 她不后悔就够了
- 在虚拟机关机时,提示Ubuntu-Unattended upgrade in progress during shutdown, please don‘t turn off
- 从EM算法到变分推断(变分贝叶斯推断)
热门文章
- java gbc_java面试题good and gbc
- java jce 授权_java jce限制
- 通信工程matlab课程设计封面,通信系统课程设计基于MATLAB的FM通信系统设计
- RabbitMQ和Spring Cache冲突问题解决
- 一个简单的php蜜罐
- java控制指令和stomp_Stomp与Jackson
- JavaScript实现shift键连续多选
- Git submodule did not contain解决办法
- 剑指 Offer(专项突击版)Java 持续更新....
- C语言memcpy函数和memmove函数