Compose的gradle配置以及与Kotlin的兼容对应

要开始使用Compose,需要先向项目中添加一些 build 配置。

将以下定义添加到应用的build.gradle.kts文件中:

Kotlin 复制代码
android {
    buildFeatures {
        compose = true
    }

    composeOptions {
        kotlinCompilerExtensionVersion = "1.5.9"
    }
}

此外,请将以下部分中您需要的Compose BoM和Compose库依赖项的子集添加到您的依赖项:

Kotlin 复制代码
dependencies {

    val composeBom = platform("androidx.compose:compose-bom:2024.02.00")
    implementation(composeBom)
    androidTestImplementation(composeBom)

    // Choose one of the following:
    // Material Design 3
    implementation("androidx.compose.material3:material3")
    // or Material Design 2
    implementation("androidx.compose.material:material")
    // or skip Material Design and build directly on top of foundational components
    implementation("androidx.compose.foundation:foundation")
    // or only import the main APIs for the underlying toolkit systems,
    // such as input and measurement/layout
    implementation("androidx.compose.ui:ui")

    // Android Studio Preview support
    implementation("androidx.compose.ui:ui-tooling-preview")
    debugImplementation("androidx.compose.ui:ui-tooling")

    // UI Tests
    androidTestImplementation("androidx.compose.ui:ui-test-junit4")
    debugImplementation("androidx.compose.ui:ui-test-manifest")

    // Optional - Included automatically by material, only add when you need
    // the icons but not the material library (e.g. when using Material3 or a
    // custom design system based on Foundation)
    implementation("androidx.compose.material:material-icons-core")
    // Optional - Add full set of material icons
    implementation("androidx.compose.material:material-icons-extended")
    // Optional - Add window size utils
    implementation("androidx.compose.material3:material3-window-size-class")

    // Optional - Integration with activities
    implementation("androidx.activity:activity-compose:1.8.2")
    // Optional - Integration with ViewModels
    implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1")
    // Optional - Integration with LiveData
    implementation("androidx.compose.runtime:runtime-livedata")
    // Optional - Integration with RxJava
    implementation("androidx.compose.runtime:runtime-rxjava2")

}

以下是Compose 与 Kotlin 的兼容性对应关系

|---------------------|---------------|
| Compose Compiler 版本 | 兼容的 Kotlin 版本 |
| 1.5.9 | 1.9.22 |
| 1.5.8 | 1.9.22 |
| 1.5.7 | 1.9.21 |
| 1.5.6 | 1.9.21 |
| 1.5.5 | 1.9.20 |
| 1.5.4 | 1.9.20 |
| 1.5.3 | 1.9.10 |
| 1.5.2 | 1.9.0 |
| 1.5.1 | 1.9.0 |
| 1.5.0 | 1.9.0 |
| 1.4.8 | 1.8.22 |
| 1.4.7 | 1.8.21 |
| 1.4.6 | 1.8.20 |
| 1.4.5 | 1.8.20 |
| 1.4.4 | 1.8.10 |
| 1.4.3 | 1.8.10 |
| 1.4.2 | 1.8.10 |
| 1.4.1 | 1.8.0 |
| 1.4.0 | 1.8.0 |

相关推荐
blammmp26 分钟前
Java:数据结构-枚举
java·开发语言·数据结构
何曾参静谧38 分钟前
「C/C++」C/C++ 指针篇 之 指针运算
c语言·开发语言·c++
暗黑起源喵44 分钟前
设计模式-工厂设计模式
java·开发语言·设计模式
WaaTong1 小时前
Java反射
java·开发语言·反射
Troc_wangpeng1 小时前
R language 关于二维平面直角坐标系的制作
开发语言·机器学习
努力的家伙是不讨厌的1 小时前
解析json导出csv或者直接入库
开发语言·python·json
萌面小侠Plus1 小时前
Android笔记(三十三):封装设备性能级别判断工具——低端机还是高端机
android·性能优化·kotlin·工具类·低端机
慢慢成长的码农1 小时前
Android Profiler 内存分析
android
大风起兮云飞扬丶1 小时前
Android——多线程、线程通信、handler机制
android
L72561 小时前
Android的Handler
android