前言
AndroidX 是 Google 2018 IO 大会推出的新扩展库,主要是对 Android支持库做了重大改进。与支持库一样,AndroidX 与 Android 操作系统分开提供,并与各个 Android 版本向后兼容,可以说 AndroidX 就是为了替换 Android 支持库而设计的。
1. AndroidX 是什么?
-
AndroidX 是 Android 团队用于在Jetpack中开发、测试、打包和发布库以及对其进行版本控制的开源项目。[摘自官方]
-
AndroidX 完全取代了支持库,不仅提供同等的功能,而且提供了新的库。
-
AndroidX 会将原始支持库 API 软件包映射到 androidx 命名空间。只有软件包和 Maven 工件名称发生了变化;类、方法和字段名称没有改变。
-
与支持库不同,AndroidX 软件包会单独维护和更新。androidx 软件包使用严格的语义版本控制,从版本 1.0.0 开始,可以单独更新项目中的 AndroidX 库。
-
所有新支持库的开发工作都将在 AndroidX 库中进行,这包括维护原始支持库工件和引入新的 Jetpack 组件。
AndroidX 的变化
1. 常见依赖库映射
旧编译工件 | AndroidX 编译工件 |
---|---|
com.android.support.constraint:constraint-layout | androidx.constraintlayout:constraintlayout:1.1.2 |
com.android.support:appcompat-v7 | androidx.appcompat:appcompat:1.0.0 |
com.android.support:cardview-v7 | androidx.cardview:cardview:1.0.0 |
com.android.support:coordinatorlayout | androidx.coordinatorlayout:coordinatorlayout:1.0.0 |
com.android.support:design | com.google.android.material:material:1.0.0-rc01 |
com.android.support:drawerlayout | androidx.drawerlayout:drawerlayout:1.0.0 |
com.android.support:gridlayout-v7 | androidx.gridlayout:gridlayout:1.0.0 |
com.android.support:media2 | androidx.media2:media2:1.0.0-alpha03 |
com.android.support:multidex | androidx.multidex:multidex:2.0.0 |
com.android.support:percent | androidx.percentlayout:percentlayout:1.0.0 |
com.android.support:recyclerview-v7 | androidx.recyclerview:recycl |