关于什么是AndroidX(二)

简介: 迁移成功后,我们先build 一下项目,看看有没有报错,有时会报错,报错的地方可以通过控制台build选项卡中看到,有些是无法自动转换的,需要手动转化,比如布局xml中的控件包名,它会保留迁移之前的包名,这个时候我们手动使用AndroidX对应包明即可。

上一篇介绍了AndroidX的由来及优势,感兴趣的同学可以去看看,链接如下:

https://developer.aliyun.com/article/998222?spm=a2c6h.13148508.setting.14.53674f0e5ssYMk

这篇文章讲讲AndroidX的使用

从Android studio 3.4.2开始,新建的项目的已经强制勾选使用Android架构了,对比一下AndroidX项目及非AndroidX项目,很明显可以看到两点不同

第一:包名。之前Android Support Library中的API,它们的包名都是在android.support.下面,而AndroidX库中所有API的包名都变成了在androidx.下面,这说明一点,以后新版本的API发布,都是随着Androidx扩展库发布的,而不是随着Android操作系统发布,不在依赖于操作系统的版本了。

第二:命名规则。吸取了之前命名规则的弊端,AndroidX所有库的命名规则里都不会再包含具体操作系统API的版本号了。比如,像appcompat-v7库,在AndroidX中就变成了appcompat库。

完整的AndroidX依赖库格式如下:

implementation 'androidx.appcompat:appcompat:1.0.2'

那么如何将旧项目迁移到AndroidX,会不会很麻烦呢?放心,Google都替我们想好了。

首页要使用Android studio3.2或更新版本

第一步:现在项目中启用AndroidX,在gradle.properties中加入以下两句代码

android.useAndroidX=true
android.enableJetifier=true

android.useAndroidX=true 表示当前项目启用 AndroidX
android.enableJetifier=true 表示将依赖包也迁移到AndroidX 。如果取值为 false ,表示不迁移依赖包到AndroidX,但在使用依赖包中的内容时可能会出现问题,当然了,如果你的项目中没有使用任何三方依赖,那么,此项可以设置为 false

第二步:在Android studio菜单栏选择Refactor->Migrate to AndroidX
image.png

在执行此操作的时候,会提醒我们是否将当前项目打包备份,如果你提前做好了备份,可以忽略;如果没有备注,则选择备份,Android studio会将项目压缩保留一份源数据后再迁移。

迁移成功后,我们先build 一下项目,看看有没有报错,有时会报错,报错的地方可以通过控制台build选项卡中看到,有些是无法自动转换的,需要手动转化,比如布局xml中的控件包名,它会保留迁移之前的包名,这个时候我们手动使用AndroidX对应包明即可。

以上就是所有内容,that‘all

相关文章
|
开发工具 Android开发
AndroidX到底是啥?
AndroidX到底是啥?
343 0
|
9月前
|
Web App开发 网络协议 安全
网络编程懒人入门(十六):手把手教你使用网络编程抓包神器Wireshark
Wireshark是一款开源和跨平台的抓包工具。它通过调用操作系统底层的API,直接捕获网卡上的数据包,因此捕获的数据包详细、功能强大。但Wireshark本身稍显复杂,本文将以用抓包实例,手把手带你一步步用好Wireshark,并真正理解抓到的数据包的各项含义。
1017 2
|
12月前
|
存储 分布式计算 分布式数据库
深入理解Apache HBase:构建大数据时代的基石
在大数据时代,数据的存储和管理成为了企业面临的一大挑战。随着数据量的急剧增长和数据结构的多样化,传统的关系型数据库(如RDBMS)逐渐显现出局限性。
1479 12
|
NoSQL Redis 缓存
Redis 加持下的 Spring 应用性能革命:见证毫秒级响应速度,打造极致用户体验!
【8月更文挑战第31天】Redis 是一个高性能键值存储系统,常用于数据库、缓存及消息中间件。与 Spring 框架集成后,可显著提升应用性能,特别是在高并发场景下。本文通过电子商务网站商品详情页的例子,展示了如何配置 Redis 并使用 `RedisTemplate` 进行数据操作,通过缓存策略优化应用性能,减轻数据库压力。例如,在 `ProductService` 类中,先从 Redis 获取商品信息,若未命中则从数据库获取并缓存至 Redis。此外,还介绍了如何通过 REST 控制器模拟 HTTP 请求进行测试。在实际项目中,结合 Spring Cache 注解可更便捷地管理缓存策略。
152 0
|
关系型数据库 Linux 应用服务中间件
linux服务器下LNMP安装与配置方法
通过遵循上述步骤,你已经在Linux服务器上成功配置了LNMP环境。这只是初步设置,根据你的实际需求,可能需要进一步的调整与优化。记得经常检查每个组件的默认配置文件,并根据需要进行调整以优化性能和安全性。
229 0
|
Android开发
Android Studio或IDEA 升级后 不提示错误问题
Android Studio或IDEA 升级后 不提示错误问题
406 1
|
机器学习/深度学习 人工智能 自然语言处理
智能笔下的学术:AI在学术写作中的革新应用
【7月更文第31天】随着人工智能技术的发展,AI工具已经成为学术界不可或缺的一部分。它们不仅能够帮助研究人员提高工作效率,还能提升论文的质量。本文将介绍一些流行的AI学术写作工具,并探讨它们如何重塑学术研究的过程。
1335 0
|
算法 安全 数据安全/隐私保护
【C/C++ 随机函数行为】深入探索C++中的随机数:std::random_device与rand的行为分析(一)
【C/C++ 随机函数行为】深入探索C++中的随机数:std::random_device与rand的行为分析
1068 0
vscode设置自动保存步骤
vscode设置自动保存就不用每次要运行时候去先保存一下才能加载新页面了
18638 0
vscode设置自动保存步骤

热门文章

最新文章