Jetpack compose与kotlin的版本选择与对应关系
所属分类:Android | 发布于 2023-04-14 19:35:02
在用Android Studio默认模板创建的Jetpack Compose应用中,项目的build.gradle是这样的
buildscript {
ext {
compose_version = '1.2.0'
}
}
plugins {
id 'org.jetbrains.kotlin.android' version '1.7.0' apply false
}
在模块的build.gradle里是有这样一段定义
android {
...
composeOptions {
kotlinCompilerExtensionVersion '1.2.0'
}
...
}
我们看到默认android studio创建的jetpackc compose项目中compose的版本是1.2.0,kotlin的版本是1.7.0,kotlinCompiler的版本是1.2.0。
当项目引入sheets-compose-dialogs的1.1.1版本后,貌似出现了版本兼容问题,提示要使用kotlin1.8版本,结果就发现了一系列的因果关系。
直接说结果吧
在Jetpack compose的官网查看当前的稳定版本
地址:https://developer.android.google.cn/jetpack/androidx/releases/compose?hl=zh-cn#kts
不看不知道,一看吓一跳,当前的jetpack compose版本居然到了1.3.3
那咱们就用1.3.3版本,这张图还是有一个要注意的是compose.compiler,这个就是咱们模块的gradle里面的kotlinCompilerExtensionVersion,最新的是1.4.3,咱上1.4.3试试,结果发现,compose.compiler和kotlin之间有版本对应的要求。
可以在这里查看compose.compiler和kotlin之间的对应关系,https://developer.android.com/jetpack/androidx/releases/compose-kotlin?hl=zh-cn
截个图
看到这里明白了,咱们默认模板里的kotlinCompilerExtensionVersion的1.2.0和org.jetbrains.kotlin.android的1.7.0是从这里的,豁然开朗,这里根据需要选择就行了,如果需要kotlin1.8.0,那compose.compiler选择1.4.0,以此类推。