晋级小计
下载了最新的Flamingo运转项目,遇到了不少问题,记录下来便利其他人遇到相似问题处理
- JDK 版别问题
- 晋级AGP从7.0晋级到7.4
- 版别依靠问题
- viewmodel版别依靠抵触
- 编译版别
JDK版别
运用最新的Android Studio版别,自带的JDK17.运转项目,不能跑起来。我运用了比较简单的方案,先降级到 jdk11。
- 下载开源的openjdk 11
- 解压到本地目录
- 装备相应的PATH
- 在Android Studio中的设置中的gradle中能够修正相应的jdk目录。修正为自己的目录
替换成功后,能够项目能够正常运转。
晋级AGP
运转项目后,最新的版别一向会提示晋级AGP到7.4.能够运用他的向导来完结晋级
主要也就是修正这个版别号
运转后,需要做不少修正才能跑通项目
- 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不稳定,经常修正很小时,感觉进入了全量编译,新版别除了第一次以外基本上能显着感觉是增量编译。