关于什么是AndroidX(一)

简介: Android 问世的时候,估计连开发者自己都没想到它会如此成功,因为一开始不可能就将API考虑得非常周到,以至于随着Android系统版本的不断迭代更新,每个版本都会新增加入很多新的API,但是新增的API在老版本中是不存在的,这里就出现了一个向下兼容的问题。

Android 问世的时候,估计连开发者自己都没想到它会如此成功,因为一开始不可能就将API考虑得非常周到,以至于随着Android系统版本的不断迭代更新,每个版本都会新增加入很多新的API,但是新增的API在老版本中是不存在的,这里就出现了一个向下兼容的问题。

举个栗子,在Android 系统发布到3.0的时候,发现平板电脑的重要性,要兼容平板电脑,于是Fragment问世了,但是Fragment不局限于用在平板电脑,老版本的系统也想用,那么怎么办呢?google说简单,于是推出了一个大名鼎鼎的Android Support Library,用于兼容老版本。

关于Android Support Library,做过开发的肯定熟悉的,比如support-v4库,appcompat-v7库,相信大家很熟悉,到时不知道他们是干嘛的。

其实support-v4跟appcompat-v7都是为了兼容老版本而诞生的,support-v4中的4指的是API版本号,对应的系统版本是1.6,代表support-v4这个库提供的API会向下兼容到Android 1.6系统。

同理appcompat-v7中的7也是API版本号,对应Android系统2.1,这个库提供的API将向下兼容到Android 2.1系统。

这里就出现了一个问题,不单Support Library的取名难以理解,要记住数字对应的版本号之后,也将库跟Android系统绑定死了,也就是说,按照这种情况迭代下去,Android每更新一个系统,就得出一个Android Support Library用于向下兼容老版本。这是很蛋疼的事,Google自己也知道问题的麻烦性,于是,AndroidX出现了。

那么什么是AndroidX?简单一句话就是,AndroidX是对Android Support Library的一次升级。升级之后怎么样呢?就是我们在开发过程中只需要用AndroidX就行,因为它本身就兼容所有版本,Android每更新一个版本,比如新增的API也会更新到AndroidX中,也就是说AndroidX中及包含了老版本的API,也有新版本的API。

Google 维护起来方便,开发者使用起来也方便,而且Google 已经明确说明,未来都会以AndroidX为主,之前的Android Support Library将慢慢不再维护淘汰。

以上就是AndroidX的解释,下一篇讲对AndroidX的使用,已经旧项目如何迁移到AndroidX。

that's all

相关文章
|
开发工具 Android开发
AndroidX到底是啥?
AndroidX到底是啥?
158 0
|
6月前
|
Android开发
ConstraintLayout 的使用
ConstraintLayout 的使用
49 1
ConstraintLayout 的使用
|
6月前
|
Android开发
android.app.BackgroundServiceStartNotAllowedException
android.app.BackgroundServiceStartNotAllowedException
262 3
|
6月前
|
Java API 数据库
Android greenDao
Android greenDao
49 2
|
Android开发
Android ConstraintLayout
Android ConstraintLayout
102 0
程序包androidx.appcompat.app不存在
程序包androidx.appcompat.app不存在
390 0
程序包androidx.support.annotation不存在/import androidx.v7.app.AppCompatActivity;报错
程序包androidx.support.annotation不存在/import androidx.v7.app.AppCompatActivity;报错
357 0
|
Android开发 前端开发
Android DataBinding 的使用姿势
Android DataBinding 的使用姿势
|
XML API Android开发
关于什么是AndroidX(二)
迁移成功后,我们先build 一下项目,看看有没有报错,有时会报错,报错的地方可以通过控制台build选项卡中看到,有些是无法自动转换的,需要手动转化,比如布局xml中的控件包名,它会保留迁移之前的包名,这个时候我们手动使用AndroidX对应包明即可。
166 0
关于什么是AndroidX(二)
|
XML 机器人 数据格式
ConstraintLayout简单效果
ConstraintLayout简单效果
338 0
ConstraintLayout简单效果