Skip to content

兼容性与版本

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

支持的平台

Compose Multiplatform 1.9.3 支持以下平台:

平台最低版本
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 桌面版仅支持 JDK 11 或更高版本,这是由于 Skia 绑定中使用的内存管理方案。

此外:

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

Jetpack Compose 与 Compose Multiplatform 发布周期

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

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

  1. 使用该发布版本的 commit 作为下一个 Compose Multiplatform 版本的基础。
  2. 添加对新平台特性的支持。
  3. 稳定所有平台。
  4. 发布新版本的 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.9.31.9.41.4.0
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