方法一(推荐此方法):
1.在AndroidStudio顶部tab中找到Refator中选择Migrate to AnadroidX...,如下图:
2.然后按步骤一步步默认,如下图:
3.最后等待如上Do Refactor 结束。build.gradle 中依赖库自动变为androidx...及项目中的类及xml中相关自动变为androidx相关,如下图:
4. 需要注意的是自动替换有些包名可能不对,需要全局替换。例如recyclerview、drawlayout、viewpager、tablayout、ConstraintLayout需要全局替换成正确的包名(包名对应表参照 :support迁移到androidx的对照support To androidx)。然后运行项目,直到编译成功。
5.对Androidx混淆处理:在混淆文件proguard-rules加入如下:
-keep class com.google.android.material.** {*;} -keep class androidx.** {*;} -keep public class * extends androidx.** -keep interface androidx.** {*;} -dontwarn com.google.android.material.** -dontnote com.google.android.material.** -dontwarn androidx.**
以上则算完成了整个迁移。
方法二(不推荐,简单描述下):
1.在项目最外层的gradle.properites中添加如下两行代码,然后同步项目:
android.useAndroidX=true android.enableJetifier=true
大概解释下上面两行代码
android.useAndroidX=true 表示当前项目启用 AndroidX
android.enableJetifier=true 表示将依赖包也迁移到AndroidX
2.等待同步完成后会报错:需要手动修改报错的地方,例如build.gradle中需要把手动把support库修改为androidx库,java文件中及xml中把对应的类修改为对应的Androidx类。
如下图:
也要完成方法一中的4,5步骤,完成了整个迁移。
最后放一个support迁移到androidx的对照support To androidx