什么是Android X

AndroidX 是 Android 团队用于在 Jetpack 中开发、测试、打包和发布库以及对其进行版本控制的开源项目。

AndroidX 对原始 Android 支持库进行了重大改进。与支持库一样,AndroidX 与 Android 操作系统分开提供,并与各个 Android 版本向后兼容。AndroidX 完全取代了支持库,不仅提供同等的功能,而且提供了新的库。此外,AndroidX 还包括以下功能:

AndroidX 中的所有软件包都使用一致的命名空间,以字符串 androidx 开头。支持库软件包已映射到对应的 androidx.* 软件包。有关所有旧类到新类以及旧编译工件到新编译工件的完整映射,请参阅软件包重构页面。

与支持库不同,AndroidX 软件包会单独维护和更新。从版本 1.0.0 开始,androidx 软件包使用严格的语义版本控制。您可以单独更新项目中的 AndroidX 库。

所有新支持库的开发工作都将在 AndroidX 库中进行。这包括维护原始支持库工件和引入新的 Jetpack 组件。

怎么使用 AndroidX

AndroidX 将原始支持库 API 替换为 androidx 命名空间中的软件包。只有软件包和 Maven 工件名称发生了变化;类、方法和字段名称没有改变。

注意:我们建议迁移时在单独的分支中工作。此外,还应设法避免在执行迁移时重构代码。

前提条件

迁移之前,请先将您的应用更新到最新版本。我们建议您更新项目以使用支持库的最终版本:版本 28.0.0。这是因为,1.0.0 版本的 AndroidX 工件是与支持库 28.0.0 工件等效的二进制文件。

使用 Android Studio 迁移现有项目

使用 Android Studio 3.2 及更高版本,您只需从菜单栏中依次选择 Refactor > Migrate to AndroidX,即可将现有项目迁移到 AndroidX。

重构命令使用两个标记。默认情况下,这两个标记在 gradle.properties 文件中都设为 true:

android.useAndroidX=true

Android 插件会使用对应的 AndroidX 库(而非支持库)。

android.enableJetifier=true

Android 插件会通过重写其二进制文件来自动迁移现有的第三方库以使用 AndroidX。

注意:内置的 Android Studio 迁移功能可能并不是一切都能处理。根据您的编译配置,您可能需要手动更新编译脚本和 Proguard 映射。例如,如果您在一个单独的编译文件中维护依赖项配置,请使用下面提到的映射文件来检查依赖项并将其更新为对应的 AndroidX 软件包。

常见问题:

1. 资源找不到,包路径有问题。

eg: android.support.v4.media.app.NotificationCompat.MediaStyle() 在androidX下就变成了androidx.media.app.NotificationCompat.MediaStyle()

2. 运行时会报布局文件错误, 往往是包路径变化了,此时就可以去官方API查看对应的控件具体路径了。比如说 TabLayout 控件

结语:  好的东西,晚切换不如早切换,迟早要切换不如提前面对。

androidx和android的区别,Android X 详解相关推荐

  1. Android中的四大组件详解

    Android中的四大组件详解 我们都知道Android系统应用层框架中,为开发者提供了四大组件来便于应用的开发,它们是Activity.Service.BroadcastReceiver.Conte ...

  2. android OKHttp的基本使用详解

    今天,简单讲讲Android里如何使用OKHttp. Android框架系列: 一.android EventBus的简单使用 二.android Glide简单使用 三.android OKHttp ...

  3. Android高效率编码-第三方SDK详解系列(一)——百度地图,绘制,覆盖物,导航,定位,细腻分解!...

    Android高效率编码-第三方SDK详解系列(一)--百度地图,绘制,覆盖物,导航,定位,细腻分解! 这是一个系列,但是我也不确定具体会更新多少期,最近很忙,主要还是效率的问题,所以一些有效的东西还 ...

  4. 基于百度地图实现Android定位功能实现(详解+教程)

    基于百度地图实现Android定位功能实现(详解+教程) 1.初始化 (一)获取到SHA1 (1)找到View中的Tool Windows并打开Terminal (2)找到你的jdk的bin目录,小编 ...

  5. Android面试基础之BroadcastReceiver详解(斗帝养成系列四)

    斗帝养成 大斗师,一至九星,斗气铠甲,斗气外放,聚气化固态,呈菱形.别说自己尽力了,那只是自欺欺人的假话. Android面试基础之Activity详解(斗帝养成系列一) Android面试基础之Se ...

  6. Android开发之打包APK详解

    Android开发之打包APK详解 一.APK简介 二.无需密匙的 apk 三.有密匙的 apk(常规) 生成 apk 其实有两个方法: 方法一:生成无密匙的 apk 文件: 方法二:生成有密匙的 a ...

  7. android studio gradle3.3,Android studio 3.2 升级详解及Gradle配置

    Android studio 3.2 升级详解及Gradle配置 发布时间:2018-09-29 15:36, 浏览次数:618 , 标签: Android studio Gradle 一直在使用An ...

  8. libraries 和android runtime之间的关系,《Android Studio应用开发实战详解》——第1章,第1.3节Android系统架构...

    本节书摘来自异步社区<Android Studio应用开发实战详解>一书中的第1章,第1.3节Android系统架构,作者 王翠萍,更多章节内容可以访问云栖社区"异步社区&quo ...

  9. 《Android Studio应用开发实战详解》——第1章,第1.2节Android系统基础

    本节书摘来自异步社区<Android Studio应用开发实战详解>一书中的第1章,第1.2节Android系统基础,作者 王翠萍,更多章节内容可以访问云栖社区"异步社区&quo ...

  10. 《Android Studio应用开发实战详解》——第1章,第1.4节Android和Linux的关系

    本节书摘来自异步社区<Android Studio应用开发实战详解>一书中的第1章,第1.4节Android和Linux的关系,作者 王翠萍,更多章节内容可以访问云栖社区"异步社 ...

最新文章

  1. Andriod anim scale中的属性介绍以及Animation类的属性
  2. 最近安装了win2008R2,界面比win2003友好多了
  3. qt使用 QMediaPlay 简单播放音乐
  4. 计算机视觉与深度学习 | 基于Faster R-CNN的目标检测(深度学习Matlab代码)
  5. MySQL用户与权限管理
  6. Tez 0.9安装部署+hive on tez配置 + Tez-UI
  7. SpingMVC Model 和ModelAndView,以及从参数的设置和接收
  8. c语言 鼠标宏,鼠标宏设置软件下载 Mini Mouse Macro(鼠标宏设置工具) v7.2.0.0 免费安装版 下载-脚本之家...
  9. 如何更换AirTag电池?
  10. 神经网络训练梯度算法详解
  11. BUG处理:javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path buil
  12. 查看linux 系统 服务器型号
  13. 使用卷积神经网络进行实时面部表情检测
  14. 自己写的代码太low?想提升代码质量但是不知道怎么做?IDEA安这个插件~
  15. 什么是ERP系统?为何工厂都要上erp软件?
  16. DataGridView绑定数据源后添加行
  17. WIN7文件夹共享步骤
  18. 过滤软件“绿坝”分析报告
  19. S3C2440驱动开发(四)
  20. Python PyScript教程之将 Python 带入浏览器进行图像处理

热门文章

  1. [LeetCode] 871. Minimum Number of Refueling Stops
  2. 简单的修改项目中的头像
  3. 【micorpython】ESP32——CAM 刷固件后显示Device is busy or does not respond. Your options:解决方法
  4. linux怎么烧写文件系统,烧写LINUX最小文件系统
  5. java textpad_TextPad 和JDK使用方法
  6. 纯css3圆柱模板立体图
  7. 线性稳压器的基本类型
  8. UVa-11292 Dragon of Loowater (贪心)
  9. 江西计算机一级b考试,江西省计算机B一级考试试题.doc
  10. Big-man进军Linux系统(二)