Android Studio Flamingo升级笔记

1,593 阅读2分钟

升级小计

下载了最新的Flamingo运行项目,遇到了不少问题,记录下来方便其他人遇到类似问题解决

  • JDK 版本问题
  • 升级AGP从7.0升级到7.4
  • 版本依赖问题
    • viewmodel版本依赖冲突
    • 编译版本

JDK版本

使用最新的Android Studio版本,自带的JDK17.运行项目,不能跑起来。我使用了比较简单的方案,先降级到 jdk11。

  • 下载开源的openjdk 11
  • 解压到本地目录
  • 配置相应的PATH
  • 在Android Studio中的设置中的gradle中可以修改相应的jdk目录。修改为自己的目录

替换成功后,可以项目可以正常运行。

升级AGP

运行项目后,最新的版本一直会提醒升级AGP到7.4.可以使用他的向导来完成升级

image.png 主要也就是修改这个版本号

运行后,需要做不少修改才能跑通项目

  • viewModel版本冲突
  • when else限制

viewModel版本冲突

Duplicate class androidx.lifecycle.ViewModelLazy found in modules jetified-lifecycle-viewmodel-ktx-2.3.1-runtime (androidx.lifecycle:lifecycle-viewmodel-ktx:2.3.1) and lifecycle-viewmodel-2.4.0-runtime (androidx.lifecycle:lifecycle-viewmodel:2.4.0)

编译总是遇到这个问题,但是有没有办法定位到具体哪些位置冲突了。

使用了命令

./gradlew dependencies

查看应用viewmodel的版本

最终将下面的版本同时修改为2.5.1以后,冲突解决了

lifecycle-runtime = "androidx.lifecycle:lifecycle-runtime-ktx:2.5.1"
lifecycle-viewmodel-ktx = "androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.1"

修改代码问题

升级到新的AGP以后。else检查好像是比较严格了。需要补全以前没有提示的else没有写的问题。 这个比较简单。

希望以上对其他升级的用户有帮助。

结论

使用了一段时间后,感觉升级以后,编译速度快多了。以前cache不稳定,经常修改很小时,感觉进入了全量编译,新版本除了第一次以外基本上能明显感觉是增量编译。