Skip to content

兼容性与版本

Compose Multiplatform 发布版本与 Kotlin 和 Jetpack Compose 发布版本是独立发布的。本页面包含有关 Compose Multiplatform 发布版本、Compose 发布周期以及组件兼容性的信息。

支持的平台

Compose Multiplatform 1.8.2 支持以下平台:

平台最低版本
AndroidAndroid 5.0 (API level 21)
iOSiOS 13
macOSmacOS 12 x64, macOS 13 arm64
WindowsWindows 10 (x86-64, arm64)
LinuxUbuntu 20.04 (x86-64, arm64)
Web支持 WasmGC 的浏览器

所有 Compose Multiplatform 发布版本仅支持 64 位平台。

Kotlin 兼容性

最新版本的 Compose Multiplatform 始终与最新版本的 Kotlin 兼容。无需手动对齐它们的版本。请记住,使用任何一个产品的抢先体验预览 (EAP) 版本仍然可能不稳定。

Compose Multiplatform 要求应用的 Compose Compiler Gradle 插件与 Kotlin Multiplatform 插件的版本相同。关于详细信息,请参见 undefined

从 Compose Multiplatform 1.8.0 开始,该 UI 框架已完全过渡到 K2 编译器。 因此,要使用最新的 Compose Multiplatform 发布版本,您应该:

  • 您的项目至少使用 Kotlin 2.1.0;
  • 仅当基于 Compose Multiplatform 的库是针对 Kotlin 2.1.0 或更高版本编译时,才依赖它们。

作为解决向后兼容性问题的临时解决方案,直到您的所有依赖项都更新, 您可以通过在 gradle.properties 文件中添加 kotlin.native.cacheKind=none 来关闭 Gradle 缓存。 这将增加编译时间。

Compose Multiplatform 桌面发布版本的限制

Compose Multiplatform 桌面版有以下限制:

  • 由于 Skia 绑定中使用的内存管理方案,仅支持 JDK 11 或更高版本。
  • 由于 jpackage 的限制,仅支持 JDK 17 或更高版本用于打包原生分发版。
  • 在 macOS 上切换键盘布局时,OpenJDK 11.0.12 存在一个已知问题。此问题在 OpenJDK 11.0.15 中无法重现。

Jetpack Compose 与 Compose Multiplatform 发布周期

Compose Multiplatform 与 Google 开发的 Android 框架 Jetpack Compose 共享大量代码。我们将 Compose Multiplatform 的发布周期与 Jetpack Compose 的发布周期对齐,以确保通用代码得到充分测试和稳定。

当 Jetpack Compose 发布新版本时,我们会:

  • 使用该发布版本的 commit 作为下一个 Compose Multiplatform 版本的基础。
  • 添加对新平台特性的支持。
  • 稳定所有平台。
  • 发布新版本的 Compose Multiplatform。

Compose Multiplatform 发布版本与 Jetpack Compose 发布版本之间的间隔通常为 1-3 个月。

Compose Multiplatform 的开发版本

Compose Multiplatform 编译器插件的开发版本(例如 1.8.2+dev2544)的构建没有固定日程,旨在测试正式发布版本之间的更新。

这些构建项在 Maven Central 中不可用。要访问它们,请将此行添加到您的版本库列表:

kotlin
maven("https://maven.pkg.jetbrains.space/public/p/compose/dev")

使用的 Jetpack Compose 构件

当您为 Android 构建您的应用程序时,Compose Multiplatform 会使用 Google 发布的构件。例如,如果您应用 Compose Multiplatform 1.5.0 Gradle 插件并将 implementation(compose.material3) 添加到您的 dependencies 中,那么您的项目将在 Android 目标平台中使用 androidx.compose.material3:material3:1.1.1 构件(但在其他目标平台中使用 org.jetbrains.compose.material3:material3:1.5.0)。

下表列出了每个 Compose Multiplatform 版本使用的 Jetpack Compose 构件版本:

Compose Multiplatform 版本Jetpack Compose 版本Jetpack Compose Material3 版本
1.8.21.8.21.3.2
1.7.31.7.61.3.1
1.7.11.7.51.3.1
1.7.01.7.11.3.0
1.6.111.6.71.2.1
1.6.101.6.71.2.1
1.6.21.6.41.2.1
1.6.11.6.31.2.1
1.6.01.6.11.2.0
1.5.121.5.41.1.2
1.5.111.5.41.1.2
1.5.101.5.41.1.2
1.5.11.5.01.1.1
1.5.01.5.01.1.1
1.4.31.4.31.0.1
1.4.11.4.31.0.1
1.4.01.4.01.0.1
1.3.11.3.31.0.1
1.3.01.3.31.0.1
1.2.11.2.11.0.0-alpha14
1.2.01.2.11.0.0-alpha14
1.1.11.1.01.0.0-alpha05
1.1.01.1.01.0.0-alpha05
1.0.11.1.0-beta021.0.0-alpha03
1.0.01.1.0-beta021.0.0-alpha03