使用 Kotlin Multiplatform 編寫單一程式碼集,即可在多個平台執行。

Google 正式支援 Kotlin Multiplatform (KMP),可讓您在 Android 和 iOS 之間共用商業邏輯。Kotlin Multiplatform 功能穩定且可用於正式版環境。 開發人員也可以使用 JetBrains 的 Compose Multiplatform (CMP),在不同平台共用 UI。

課程
立即踏上跨平台開發之旅,本路徑將引導您瞭解 Kotlin Multiplatform 的基本概念,包括設定專案、共用程式碼、使用平台專屬 API,以及將 Room 資料庫遷移至 Kotlin Multiplatform。
Android Studio 外掛程式
建議您安裝 JetBrains 開發的 Kotlin Multiplatform Android Studio 外掛程式,提升 Android Studio 的開發體驗。
  • 「New project」精靈:在 IDE 中建立新的跨平台專案。
  • 預檢:預檢可協助您設定環境。
  • 執行設定:直接從 IDE 在 iOS 和 Android 上執行、偵錯及測試應用程式。
  • IDE 中的基本 Swift 支援:在 IDE 中取得基本 Swift 支援,包括跨語言偵錯工具、導覽和快速文件。

Kotlin Multiplatform 的優點

使用 Kotlin Multiplatform,您可以選擇要跨平台共用的內容,從核心業務邏輯到整個應用程式都可以。以下列舉幾個主要優點:
您不必在每個平台複製複雜的業務邏輯。
使用 Kotlin Multiplatform 時,您不必重寫整個應用程式,即可開始在平台之間共用程式碼。
Kotlin Multiplatform 會編譯成目標平台執行程式碼的原生方式,因此效能與原生實作項目不相上下。

Kotlin Multiplatform 和 Jetpack 程式庫

許多 Jetpack 程式庫已遷移完畢,可支援 KMP。下列 Jetpack 程式庫支援 KMP:

Android 標誌 Android 建構 JetBrains 標誌 JetBrains 建構 不支援

程式庫 最新版本 Android iOS JVM 網路
annotation 2025 年 10 月 22 日
collection 2025 年 8 月 27 日
compose 2025 年 10 月 22 日
datastore

說明文件
2025 年 10 月 22 日
生命週期

說明文件
2025 年 10 月 22 日
viewModel

說明文件
2025 年 10 月 22 日
viewModel-compose

說明文件
2025 年 10 月 22 日
paging 2025 年 9 月 10 日
room

說明文件
2025 年 10 月 22 日
savedstate 2025 年 10 月 22 日
sqlite

說明文件
2025 年 9 月 24 日

如果您對這些程式庫有任何意見,請透過 Issue Tracker 與我們分享。

工具支援

您可以在 Android Studio 中開啟、編輯及執行多平台專案。
您可以在 Android Studio 中建立 KMP 共用模組,開始遷移至 KMP。這個模組會自動套用所有必要的外掛程式 (包括 Android-KMP 外掛程式),方便您開始開發 Android 和 iOS 應用程式。
在 Android 裝置上建構專案時,即時編輯功能會運作,編輯專案中的任何程式碼 (不只是 androidMain)。
您也可以從 commonMain 來源集預覽 JetBrains 的 Compose Multiplatform。

以 Kotlin Multiplatform 建構的應用程式

許多應用程式已成功使用 Kotlin Multiplatform。
Blinkit
Cash App
Duolingo
Forbes
Google Docs
JioHotstar
石頭
Swiggy
Ultrahuman
Wrike
Zomato

支援的平台

正式支援的平台 (Android 和 iOS) 適用的 Jetpack 程式庫版本,會維持相同的品質和相容性需求。不過,我們正努力將 Jetpack 的 Kotlin Multiplatform 支援功能擴展至其他平台,因此工具和基礎架構支援功能可能仍在開發中。
程式碼會在 CI 中經過完整測試,包括主機端和裝置端測試。我們會根據語意版本管理政策,追蹤來源和二進位檔相容性。
  • Android
  • JVM
  • iOS
程式碼會在 CI 上進行部分測試,但僅限於主機端測試。我們不會追蹤來源或二進位檔相容性。
  • macOS
  • Linux
程式碼未在 CI 上測試。不追蹤來源或二進位檔相容性。
  • watchOS
  • tvOS
  • Windows
  • JavaScript
  • WASM

其他資源

如要進一步瞭解整體跨平台生態系統和更進階的設定,請參閱官方的 Kotlin Multiplatform 說明文件
這組 Kotlin Multiplatform 範例會示範如何使用 Android 和 iOS 適用的 Jetpack 程式庫。
逐步引導您在專案中新增 KMP。
循序漸進地將僅限 Android 的 Room 遷移至 KMP。
如需更深入的指引,請參閱 Kotlinlang.org 上的 Kotlin Multiplatform 說明文件中心。
瞭解 Kotlin Multiplatform 的定義、運作方式,以及使用這項技術的優點。