什么是 Kotlin Multiplatform
Kotlin Multiplatform (KMP) 是由 JetBrains 开发的一项开源技术,它支持在 Android、iOS、桌面、Web 和服务器之间共享代码,同时保留原生开发的优势。
通过使用 Compose Multiplatform,您还可以在多个平台之间共享 UI 代码,实现最大程度的代码复用。
为什么公司选择 KMP
成本效益与更快的交付速度
Kotlin Multiplatform 有助于简化技术和组织流程:
- 您可以通过跨平台共享逻辑和 UI 代码来减少重复工作并降低维护成本。这也使得在多个平台上同时发布功能成为可能。
- 团队协作变得更加容易,因为统一的逻辑可以在共享代码中访问,这使得团队成员之间的知识传递更加方便,并减少了专门平台团队之间的重复劳动。
除了加快上市时间外,55% 的用户报告称采用 KMP 后协作得到了改善,65% 的团队报告称性能和质量得到了提升(源自 2024 年第二季度 KMP 调查)。
KMP 已被各种规模的组织(从初创公司到全球企业)用于生产环境。Google、Duolingo、Forbes、Philips、McDonald's、Bolt、H&M、百度、快手和哔哩哔哩等公司都采用了 KMP,因为它具有灵活性、原生性能、提供原生用户体验的能力、成本效益以及支持渐进式采用。详细了解已采用 KMP 的公司。
代码共享的灵活性
您可以按照您的需求共享代码:共享隔离的模块(如网络或存储),并随着时间的推移逐步扩展共享代码。 您还可以在保留原生 UI 的同时共享所有业务逻辑,或者使用 Compose Multiplatform 逐步迁移 UI。

iOS 上的原生感
您可以完全使用 SwiftUI 或 UIKit 构建 UI,使用 Compose Multiplatform 在 Android 和 iOS 上创建统一的体验,或者根据需要混合搭配原生与共享 UI 代码。
无论采用哪种方法,您都可以开发出在每个平台上都具有原生感的应用:
原生性能
Kotlin Multiplatform 利用 Kotlin/Native 生成原生二进制文件,并在不适用或无法使用虚拟机的场景(例如 iOS)中直接访问平台 API。
这有助于在编写平台无关的代码时实现接近原生的性能:

无缝的工具链
IntelliJ IDEA 和 Android Studio 通过 Kotlin Multiplatform IDE 插件 为 KMP 提供智能 IDE 支持,包括通用 UI 预览、Compose Multiplatform 实时重载、跨语言导航、重构操作,以及跨 Kotlin 和 Swift 代码的调试。
AI 驱动的开发
让 JetBrains 的 AI 编码代理 Junie 处理 KMP 任务,让您的团队能够更快速地推进。
探索 Kotlin Multiplatform 用例
了解公司和开发者如何从共享 Kotlin 代码中受益:
- 在我们的案例研究页面上了解各公司如何在其代码库中成功采用 KMP。
- 在我们的精选示例列表和 GitHub kotlin-multiplatform-sample 话题中查看各种示例应用。
- 在 klibs.io 上已有的数千个库中搜索特定的多平台库。
学习基础知识
要快速了解 KMP 的实际应用,请尝试快速入门。 您将设置环境并在不同平台上运行示例应用程序。
选择一个用例 : * 要创建一个在平台之间共享 UI 和业务逻辑代码的应用,请参考共享逻辑与 UI 教程。
深入研究技术细节 : * 从基本项目结构开始。
规模化采用 Kotlin Multiplatform
在团队中采用跨平台框架可能是一项挑战。 要了解跨平台开发的优势和潜在问题的解决方案,请查看我们对跨平台开发的高级概述:
- 什么是跨平台移动开发?:概述了跨平台应用的不同方法和实现方式。
- 如何向您的团队介绍多平台移动开发:提供了在团队中引入跨平台开发的策略。
- 采用 Kotlin Multiplatform 并助力项目腾飞的十大理由:列出了选择 Kotlin Multiplatform 作为跨平台解决方案的理由。