Android项目迁移到AndroidX
1. 写在前面
迁移前请确认所有代码都已提交至代码托管平台或已手动备份!
迁移前请确认所有代码都已提交至代码托管平台或已手动备份!
迁移前请确认所有代码都已提交至代码托管平台或已手动备份!
重要的事情说三遍!
2. 前提条件
-
将AS更新至 AS 3.2及以上,最好是3.5
-
Gradle 插件版本改为 4.6及以上,项目下gradle/wrapper/gradle-wrapper.propertie文件中的distributionUrl改为:distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip
-
compileSdkVersion 版本升级到 28及以上buildToolsVersion 版本改为 28.0.2及以上。
官方建议在迁移之前,先将应用的Support Lib更新至最新版本version 28.0.0。这是因为AndroidX 1.0.0版本是与Support Lib 28.0.0一致的二进制文件。
使用AndroidStudio迁移现有项目
Step 1:开启迁移,在gradle.properties文件中添加如下配置用以表示项目启用AndroidX并迁移到AndroidX
android.useAndroidX=true
android.enableJetifier=true
Android项目迁移到AndroidX
gradle.properties截图
Step 2:在AS中打开项目->点击菜单栏->Refactor->Migrate to AndroidX,如下图所示
AS菜单截图执行后会弹框提示你备份
Migrate to AndroidX Dialog备份完成后会看到一个搜索的弹框在动,搜索结束后再在下方的find可以看到,点击do refactor进行重构。
AS会自动把你项目中的依赖切换到AndroidX,并且修改项目中使用到的依赖库路径。
Step 3:点击菜单栏->File->Invalidate Caches /Restart重启IDE,这一步很重要,很多依赖包的缓存会让你在Refactor结束后各种报错,清除缓存重启下就好。要不然一个个改头都痛。