Kotlin 多平台路线图
Kotlin 多平台路线图旨在概述 Kotlin 多平台项目的优先事项和总体发展方向。
最新版路线图博客文章发布于2024年10月28日。本页面是其内容摘要,将在达成既定里程碑或需要反映战略调整时进行更新:
2025年2月14日,根据Kotlin 多平台工具链——转换思路博客文章描述的变更更新了路线图。
Kotlin 多平台目标与Kotlin 路线图高度一致。建议查阅该路线图以更全面理解我们的发展方向。
核心优先事项
稳定版 Compose 多平台 iOS 支持 :推动 iOS 目标平台达到稳定状态,需要改进底层框架及iOS专属集成与基准测试。
优化基于 IntelliJ 的 IDE 对多平台开发的支持 ,为 Kotlin 多平台和 Compose 多平台提供更优开发环境。
发布 Kotlin 转 Swift 导出的首个公开版本 。初始版本旨在提供与现有 Objective-C 导出相当的使用体验,并为未来充分利用 Swift 导出奠定基础。
通过改进工具和指南提升多平台库创建体验 。我们将优化 klib 格式使其更灵活强大,并提供更完善的模板和创建多平台库的指导。
使 Amper 适配多平台移动开发 。2025年,Amper 将全面支持 iOS 和 Android 的多平台开发,包括使用 Compose 多平台共享 UI 代码。
常见问题解答请参见FAQ章节。
Compose 多平台
Compose 多平台的重点领域包括:
实现与 Jetpack Compose 的功能对等 。确保所有核心 API 和组件实现多平台化。
iOS 渲染性能优化 。建立基准测试基础设施以监测性能回退,使框架性能对用户透明化。
核心组件的功能完整性 。完成包括以下关键功能:
导航
资源管理
无障碍功能
国际化支持
框架整体稳定性提升 。提高整体稳定性(包括 Compose 与原生视图的互操作性),同时通过 Compose 多平台预览功能优化用户体验。
文档体系建设 。为用户提供学习使用 Compose 多平台所需的一站式资源。
Compose 多平台 Web 支持 。实现与其他支持平台的功能对等。
关于 Compose HTML 有何计划?
在持续维护 Compose HTML 库并修复问题的同时,我们正在现有用户中探索其使用场景,以便制定未来发展计划。
工具链
我们的目标是确保 Kotlin 多平台能与 IntelliJ IDEA 和 Android Studio 等常用于 KMP 开发的 IDE 无缝集成,使项目内或跨项目的代码共享更便捷。
我们也在探索以下新领域以提升开发体验:
研究通过云机器构建 iOS 应用,帮助无法便捷使用 Apple 设备的开发者。
试验深度集成 AI 工具,不仅辅助代码生成,还能处理更复杂的开发任务。
Kotlin 转 Swift 导出
2025年的目标是发布首个 Kotlin 直接转 Swift 导出的公开版本。初始版本旨在提供与现有 Objective-C 导出相当的用户体验,同时突破 Objective-C 的限制。
这将扩展对 Swift 语言的支持并简化 API 导出流程,为未来充分释放 Swift 导出潜力铺平道路。
库生态系统
随着 Kotlin 多平台生态快速扩张,确保库的向后兼容性至关重要。我们的计划包括:
改进 klib 格式,使库作者能复用构建 JVM 库的知识。
在 Kotlin 多平台库中实现与 JVM 相同的代码内联行为。
提供确保多平台库公共 API 保持向后兼容的工具。
我们还将优化 Kotlin 多平台库的发布流程:
提供创建和发布 KMP 库的模板与全面指南。
稳定不同平台的 klib 交叉编译。
推出全新设计的 KMP 库发布流程。
显著改进库文档编写流程。
虽然 Kotlin 多平台将迎来重大更新,但采用当前格式构建的库仍可在新版 Kotlin 中正常使用。
改进多平台库搜索体验
目前已有超过2500个 Kotlin 多平台库可用。尽管选择丰富,开发者仍难以精准找到符合需求且支持目标平台的库。
我们的目标是推出解决方案,帮助开发者轻松发现并试用这些库。
Amper
Amper 是 JetBrains 的实验性项目配置与构建工具。2025年,我们将重点使其完全适配 Android 和 iOS 的多平台移动应用开发,支持共享 Compose 多平台 UI。
计划实现以下支持:
在本地、物理设备和 CI 环境中运行测试应用。
应用签名及发布至 Play Store 和 App Store。
IDE 集成以确保流畅愉悦的体验。
Gradle 与其他构建工具
关于2025年 Gradle 的改进工作,详见Kotlin 路线图。
以下是 Kotlin 多平台相关重点领域:
支持在项目级声明 Kotlin 多平台依赖项,提升依赖管理效率。
改进 Kotlin/Native 工具链与 Gradle 的集成。
实现新一代多平台库分发格式,简化依赖模型和发布布局,使其更易与第三方构建工具配合使用,降低库作者的复杂度。
在声明式 Gradle 中提供完整的 Kotlin 多平台支持。通过支持声明式 Gradle 的实验性 Kotlin 生态插件,帮助开发者探索声明式构建方案。
常见问题
能否修复 IntelliJ IDEA 的 KMP 支持?
我们深知在 IntelliJ IDEA 中提供优质 KMP 体验的重要性。如KMP 工具链博客文章所述,我们将专注于全面提升 IntelliJ 平台对 KMP 的支持,包括改进质量稳定性并引入特定功能,使偏好 IntelliJ IDEA 的多平台开发者能在首选 IDE 中获得完整支持。
Android Studio 的 KMP 支持进展如何?
我们正与 Google 积极合作改进 Android Studio 的 KMP 支持,详细计划将在后续公布。敬请关注!
当前推荐用什么 IDE 进行 KMP 开发?
若主要开发移动应用,推荐使用 Android Studio。我们也在努力为 IntelliJ IDEA 提供完善支持。
IntelliJ IDEA 和 Android Studio 会支持 Swift 吗?
Swift 是某些 KMP 场景的重要组成部分,我们正在推进对这些用例的支持。
你们要放弃 Web 平台吗?
绝不!我们正积极推进 Kotlin/Wasm 支持以及 Compose 多平台 Web 版的功能对等工作,当前重点包括实现拖放支持、改进文本输入渲染、确保与 HTML 内容的无缝互操作。详细计划即将公布,请保持关注!
Compose HTML 有何规划?
在持续维护 Compose HTML 库并修复问题的同时,我们正在现有用户中探索其使用场景,以便制定未来发展计划。