前文:
最近更新了Android Studio,发现它的Logo也变了,只想感叹一句:AS变化的节奏太快了吧,我都跟不上了。而且我目前的项目架构还停留在前辈们开发的版本中,一直在做功能增加,功能优化,功能再增加... 打工人也不敢随意更改项目架构,只能有时间的时候自己琢磨着来。看来,是时候要给项目升级了。SO,先从迁移Android库开始。
正文:
查看官方文档可知,迁移至AndroidX先升级应用程序。而且在AS3.2以上的版本中有迁移至AndroidX的菜单选项。但是为了避免出现不必要的问题,我选择的是手动迁移项目。那么按照官方文档先升级应用程序,修改sdk版本,以及gradle插件版本
project目录下的build.gradle修改gradle插件。
classpath 'com.android.tools.build:gradle:4.1.0'
project目录下的common_config.gradle配置了module中的sdk版本和引用库的版本,所以直接在配置文件中修改android引用库的版本,修改至androidx库。
官方文档也提供了从旧支持库更新到androidx的映射文档,如下地址:
https://developer.android.google.cn/jetpack/androidx/migrate/class-mappings?hl=en
https://developer.android.google.cn/jetpack/androidx/migrate/artifact-mappings?hl=en
更新完引用库之后,记得更新Gradle版本为6.5~ 根据官方文档可知,不同的gradle插件版本对应了不一样的Gradle版本,Plugin 和Gradle 对应的版本关系。查看官方文档是多么的重要啊。。。
程序中涉及到的库更新完之后,就是项目中的系统引用类了,以及布局文件。如果这时候编译项目程序会报错,可以根据错误提示进行修改引用类库和布局文件中的控件引用。有相同的引用类可以直接全局搜索?替换,只能想到这种笨方法了。
结束:
全部替换之后,编译并使用~ 暂时未出现问题。以此记录此次手动迁移AndroidX。迁移AndroidX只是使用Jetpack库的第一步,后续前辈们搭建的项目框架也可以尝试去更新,并使用Jetpack那套框架,毕竟官方是推荐使用的。