Android 迁移到 Androidx

image.png

前言

  • 最近 Google 发布了 Android support library 28,同时也发布了 androidx 1.0.0 第一个正式版本,然后得知支持库的 "28.0.0" 将会是最后一次更新,之后的更新都会迁移到 Androidx 中,所以没办法,只能把项目依赖也迁移到 Androidx 了。

开始迁移

  • 迁移步骤 Google 官方有给出流程,首先在 gradle.properties 文件中添加
// 表示使用 androidx
android.useAndroidX=true
// 表示将第三方库迁移到 androidx
android.enableJetifier=true
  • 然后菜单栏 Refactor -> Migrate to Androidx 就可以了,Android Studio 会自动把你项目中的依赖切换到 Androidx,并且修改项目中使用到依赖库的路径。

迁移中的坑

  • 当然啦,如果真的这么简单就完事了我就不用写这篇文章了,实际迁移中还是有不少问题的。
  1. 首先,项目中使用到的依赖库路径修改有很多事错误的,或者是没有修改的,这个没办法,只能每个文件都打开,一个一个的修改了╥﹏╥...
  2. 然后,使用android.enableJetifier=true可以将项目中使用的第三方库也迁移到 Androidx,但是,迁移后使用还是会报错,这时你需要 Flie -> Invalidate Caches /Restart 一下就可以了。
  3. 接着就是项目中用到了 databindingdagger 的,使用 dagger 的最新版本 2.17,注解处理器会产生冲突,导致项目无法编译成功,到处找解决方案都没有,最后只好退回 2.16 这个版本才解决了这个问题。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,970评论 2 59
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,467评论 25 708
  • 我很害怕 再打指纹 我再也听不到 谢谢 有的是无限循环的 请重按手指 我不喜欢 再也按不出 谢谢 我还和以前一样 ...
    九啊九啊阅读 207评论 0 0
  • paper写吐了,刚才打开wps准备开始的时候,突然想起了昨天在知乎看到的简书,于是,就随着心开始吧。 一直算是个...
    尘风阅读 160评论 0 1
  • 他哭了,你说还会再笑 他走了,你说还会再回来 他死了,你说那便死了吧
    丿余温丶渐凉阅读 156评论 0 0