使用 Kotlin Multiplatform 编写一套在多个平台上运行的代码库。

Kotlin Multiplatform (KMP) 已获得 Google 官方支持,用于在 Android 和 iOS 之间共享业务逻辑。Kotlin Multiplatform 目前稳定且可用于生产环境。借助 JetBrains 的 Compose Multiplatform (CMP),开发者还可以跨平台共享界面 (UI)。

路径
立即开启您的跨平台开发之旅。本学习路径将引导您了解 Kotlin Multiplatform 的基本知识,包括设置项目、共享代码、使用特定于平台的 API,以及将 Room 数据库迁移至 Kotlin Multiplatform。
Android Studio 插件
我们建议安装由 JetBrains 开发的 Kotlin Multiplatform Android Studio 插件,以提升在 Android Studio 中的开发体验。
  • 新项目向导:在 IDE 中创建新的多平台项目。
  • 预检 (Preflight checks):预检功能可帮助您配置开发环境。
  • 运行配置:直接在 IDE 中运行、调试和测试 iOS 及 Android 应用。
  • IDE 中的基本 Swift 支持:在 IDE 中获得基本的 Swift 支持,包括跨语言调试工具、导航和快速文档。

Kotlin Multiplatform 的优势

使用 Kotlin Multiplatform,您可以选择在各平台间共享哪些内容,从核心业务逻辑到整个应用程序均可。以下是它的一些主要优势:
您无需在每个平台上重复编写复杂的业务逻辑。
借助 Kotlin Multiplatform,您无需重写整个应用程序即可开始在平台间共享代码。
Kotlin Multiplatform 会编译为目标平台运行代码的原生方式,从而提供与原生实现相媲美的性能。

Kotlin Multiplatform 和 Jetpack 库

我们的许多 Jetpack 库已完成迁移,现已支持 KMP。以下 Jetpack 库提供 KMP 支持:

Android logo 由 Android 构建 JetBrains logo 由 JetBrains 构建 不支持

最新版本 Android iOS JVM Web
annotation 2026 年 4 月 8 日
collection 2026 年 3 月 11 日
compose 2026 年 6 月 17 日
datastore

文档
2026 年 5 月 6 日
lifecycle

文档
2026 年 6 月 17 日
viewModel

文档
2026 年 6 月 17 日
viewModel-compose

文档
2026 年 6 月 17 日
paging 2026 年 5 月 6 日
room

文档
2025 年 11 月 19 日
savedstate 2026 年 5 月 19 日
sqlite

文档
2026 年 6 月 17 日

如果您对这些库有任何反馈,请通过 Issue Tracker 提交。

JetBrains 发布的库将 Android 制品与其他平台的制品打包在一起,以便您可以在多平台项目中无缝使用它们。要了解底层的发布流程,请参阅 多平台 Jetpack 库的打包方式

工具支持

您可以在 Android Studio 中打开、编辑和运行多平台项目。
您可以通过在 Android Studio 中创建 KMP 共享模块来开始迁移至 KMP。该模块会自动应用所有必要的插件(包括 Android-KMP 插件),以开始开发 Android 和 iOS 应用。
当在 Android 设备上进行构建并编辑项目中的任何代码(不仅限于 androidMain)时,实时编辑功能均可工作。
Jetpack Compose 的预览功能现在也适用于来自 commonMain 源代码集的 JetBrains Compose Multiplatform。

使用 Kotlin Multiplatform 构建的应用

许多应用已经在成功使用 Kotlin Multiplatform。
Blinkit
Cash App
Duolingo
Forbes
Google Docs
JioHotstar
Stone
Swiggy
Ultrahuman
Wrike
Zomato

Jetpack 中的受支持平台

针对官方支持的平台(Android 和 iOS)发布的 Jetpack 库维护着相同的质量和兼容性要求。不过,随着我们努力将 Jetpack 的 Kotlin Multiplatform 支持扩展到其他平台,工具和基础架构支持可能尚处于开发阶段。
代码已在 CI 中经过全面测试,包括主机端测试和设备端测试。我们正根据我们的语义化版本控制政策跟踪源代码和二进制兼容性。
  • Android
  • JVM
  • iOS
代码已在 CI 中经过部分测试,仅限于主机端测试。我们不跟踪源代码或二进制兼容性。
  • macOS
  • Linux
代码尚未在 CI 中进行测试。不跟踪源代码或二进制兼容性。
  • watchOS
  • tvOS
  • Windows
  • JavaScript
  • WASM

其他资源

有关整体多平台生态系统和更高级配置的详细信息,请参阅官方的 Kotlin Multiplatform 文档
一组 Kotlin Multiplatform 示例,演示了如何将 Jetpack 库用于 Android 和 iOS。
关于如何将 KMP 添加到项目的指导教程。
将仅限 Android 的 Room 迁移至 KMP 的指导教程。
如需更深入的指导,请访问 Kotlinlang.org 上的 Kotlin Multiplatform 文档中心。
了解什么是 Kotlin Multiplatform、其工作原理以及使用它的益处。