android - 如果 gradle 中包含生命周期扩展,kotlin-android-extensions 将停止工作
问题描述
使用以下行将 Android 生命周期组件添加到我的项目后:implementation("androidx.lifecycle:lifecycle-extensions:$lifecycleVersion")
在我的应用程序的 build.gradle.kts 文件中,所有导入kotlinx.android.synthetic
停止工作,lifecycleVersion 定义为“2.0.0”
它在我使用导入视图的地方给了我以下错误。并且导入被 IDE 标记为未使用
未解决的参考。由于接收器类型不匹配,以下候选均不适用:
在线搜索解决方案后,我尝试将源代码从 main/java 文件夹移动到 main/kotlin 文件夹,但没有成功。
解决方案
问题似乎是因为导航依赖项必须(目前)在android.arch
分发中添加androidx
依赖项与项目混淆。通过将以前的冲突依赖替换为:
implementation("android.arch.lifecycle:extensions:1.1.1")
奇怪的是,唯一相互冲突的依赖是那个依赖而不是其他依赖。但是在更改了对android.arch
分发的所有依赖项之后,问题已经解决了。