Kotlin
A concise multiplatform language developed by JetBrains
Compose Multiplatform 1.8.0 发布:Compose Multiplatform for iOS 已经稳定并且可以投入生产环境
今天标志着 Kotlin Multiplatform 旅程的一个重要里程碑:Compose Multiplatform 1.8.0 现已发布,将 Compose for iOS 带入稳定阶段。 更新后,Kotlin Multiplatform 成为移动开发的完整解决方案,支持跨业务逻辑和 UI 的灵活代码共享,而不会影响应用质量或减少对平台特定功能的控制。
构建实际应用所需的一切
Compose Multiplatform for iOS 现在包含为实际应用构建精美 UI 所需的一切:
- 在所有常见用例中功能与 Jetpack Compose 一致
- 具有深度链接支持的类型安全导航
- 灵活的资源管理。
- 通过 VoiceOver、AssistiveTouch 和全键盘访问提供的一流无障碍支持
- 等等
1.8.0 版本完成了核心 API 界面,并对无障碍功能和导航做出了针对性改进,同时还带来大量 bug 修正和性能改进(请参阅 1.8.0 最新变化中的详细信息)。 所有主要 API 现已正式稳定,具有强大的兼容性保证,预计未来只会有极少的破坏性改动。
这一稳定基础由快速发展的生态系统支撑。 Jetpack 库正在采用多平台功能,社区持续贡献高质量库,涵盖从架构和依赖项注入到图像加载和图形呈现的所有内容 – 全都列在官方 Kotlin Multiplatform 库目录 klibs.io 上。
借助这些构建元素,您可以直接开始开发稳健、功能丰富的应用,就像已经将 Compose Multiplatform 应用投入生产的团队一样。

纯正原生感应用
iOS 用户期望也关注流畅、原生的行为。 Compose Multiplatform for iOS 专注于确保细节准确,让应用在平台上感觉熟悉且响应迅速:
- 滚动行为与原生 iOS 物理匹配。
- 具有原生选择和从右到左支持的文本编辑。
- 系统拖放集成。
- 自适应 UI,遵循字体大小和对比度等系统设置。
- iOS 用户熟悉的导航手势。
Respawn iOS 应用使用 Compose Multiplatform 构建,与 Android 版共享 96% 的代码。
Compose Multiplatform 秉承 Kotlin Multiplatform 的核心理念,继续将原生和跨平台开发的最佳特性融合在一起。 1.8.0 版本进一步改进了与 SwiftUI 和 UIKit 的互操作性,让您可以将 Compose 无缝嵌入现有应用,或将原生视图合并到 Compose 屏幕中。 这种方式支持逐步采用,并让您完全控制如何以及在何处共享代码。
可以立即投入生产的性能
良好的用户体验不仅仅取决于 UI 行为,也与性能有关。 流畅、响应迅速的交互是用户满意的关键。 因此,性能是整个稳定工作的核心焦点。 在 1.8.0 中:
- 启动时间与原生应用相当,因此您的第一帧到达的速度同样快。
- 即使在高刷新率设备上,滚动性能也与 SwiftUI 相当。
- 与具有相同 UI 逻辑和资源的完全原生 SwiftUI 应用相比,Compose Multiplatform 仅将 iOS 应用的大小增加了约 9 MB。

最重要的是,这与开发者在实践中看到的情况相符。 根据我们的最新调查,超过 96% 在 iOS 上使用 Compose Multiplatform 的团队表示没有遇到重大性能问题。
提高效率的开发工具
为了使 Compose Multiplatform 应用构建更快、更顺畅、更愉快,我们正在积极改进 KMP 工具。 IntelliJ IDEA 和 Android Studio 即将获得新的 KMP 插件。 除了编写通用逻辑的功能外,它还将提供对通用代码中 Compose Previews 的支持以及用于管理资源的工具。
更令人期待的是,Compose Hot Reload 已经可用。 使用此功能,您可以更改 UI 代码并立即查看结果,无需重新启动应用或丢失当前状态。 它可以在您工作时智能地重新加载代码 – 使 UI 迭代比以往更快、更流畅。
生产就绪且易于采用
Compose Multiplatform for iOS 现在覆盖所有方面:包括稳定的 API、出色的性能、原生的感觉和新型工具。 您的用户将对 UI 感到熟悉,而您的团队会注意到不同之处:更少的 bug、更少的重复工作以及更快的跨平台交付。
最重要的是,您不需要从头开始。 许多团队(包括 Markaz、Wrike、Feres 和 Physics Wallah)已经将 Compose Multiplatform 集成到大型应用中,一次一个屏幕或一个功能。 它适合您的工作流,并且能够随您的需求一起增长。

Compose Multiplatform for iOS 现已稳定。 生态系统正在蓬勃发展, 工具已经就绪。 现在,我们迫不及待想看到您构建的应用。
超越移动端的 Compose Multiplatform
Compose Multiplatform for Web 也在快速发展。 在 1.8.0 中,导航库现在支持浏览器后退和前进按钮,使 Web 应用感觉更加原生。 开发者还可以尝试指针光标自定义和资源预加载 API,这有助于减少布局偏移和提高感知性能。
这些更新使 Compose Multiplatform for Web 更接近于提供完善的生产就绪体验。 几天后,我们将在文章“Kotlin 在 Web 端的现在和未来”中分享更多关于 Kotlin Web 开发的愿景和计划。 敬请关注。
阅读更多内容
- Compose Multiplatform 1.8.0 – GitHub 上的版本说明
- Compose Multiplatform 1.8.0 最新变化 – 文档门户上的详细版本说明
- Compose Multiplatform 使用入门 – 教程
- Compose Multiplatform 和 Jetpack Compose
本博文英文原作者: