我想试用 Jetpack Compose,但一个问题阻止我在我的项目中这样做。
我使用 Android Studio Artic Fox 2020.3.1 Beta 3 打开了我的项目,并根据 Jetpack Compose 的要求将我的 kotlin 版本从 1.5.10 降级到 1.4.32。
顶级 build.gradle:
buildscript {
ext {
kotlin_version = '1.4.32'
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
应用级 build.gradle:
dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version"
}
这样做之后,由于无符号类型,我收到多个错误,例如:
Unresolved reference: toUShort
来自这段代码
val myShort: Short = 2
val myUShort: UShort = myShort.toUShort()
IDE 不会向我显示这些错误,它仅在我尝试构建应用程序时发生。如果我 Ctrl + 单击 toUShort 方法,它会向我显示 kotlin-stdlib-common:1.5.0 的文档,在那里我可以看到该方法用“@SinceKotlin("1.5")”注释。
这很奇怪,因为我从 Kotlin 1.4.10 开始使用无符号类型。它之前处于测试阶段,我不得不添加某种“@Experimental”注释,但直到现在它一直有效。
我该如何解决这个问题?我需要试用 Jetpack Compose,但我无法在不废弃大部分代码库的情况下使用无符号类型。