Skip to content

兼容性與版本

Compose Multiplatform 的發佈與 Kotlin 和 Jetpack Compose 的發佈是分開的。此頁面包含有關 Compose Multiplatform 發佈、Compose 發佈週期以及組件兼容性的資訊。

支援的平台

Compose Multiplatform 1.9.3 支援以下平台:

平台最低版本
AndroidAndroid 5.0 (API 等級 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 要求套用與 Kotlin Multiplatform 外掛程式版本相同的 Compose Compiler Gradle 外掛程式。 詳情請參閱 undefined

從 Compose Multiplatform 1.8.0 開始,UI 框架已完全過渡到 K2 編譯器。 因此,要使用最新的 Compose Multiplatform 版本,您應該:

  • 您的專案至少使用 Kotlin 2.1.0,
  • 僅當基於 Compose Multiplatform 的函式庫至少以 Kotlin 2.1.0 編譯時,才依賴這些函式庫。

作為向後兼容性問題的變通方法,直到您的所有依賴項都更新為止,您可以將 kotlin.native.cacheKind=none 新增到您的 gradle.properties 檔案中以關閉 Gradle 快取。 這會增加編譯時間。

桌面版 Compose Multiplatform 的限制

由於 Skia 綁定中使用的記憶體管理方案,桌面版 Compose Multiplatform 僅支援 JDK 11 或更高版本。

此外:

  • 由於 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. 使用該發佈提交作為下一個 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 Artifacts

當您為 Android 建置應用程式時,Compose Multiplatform 會使用 Google 發佈的 Artifacts。 例如,如果您應用 Compose Multiplatform 1.5.0 Gradle 外掛程式並將 implementation(compose.material3) 新增到您的 dependencies 中,那麼您的 專案將在 Android 目標中使用 androidx.compose.material3:material3:1.1.1 Artifact(但在其他目標中則使用 org.jetbrains.compose.material3:material3:1.5.0)。

下表列出了每個 Compose Multiplatform 版本使用的 Jetpack Compose Artifact 版本:

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