Kotlin Multiplatform Development Help

Kotlin 多平台示例项目集锦

本文精选了一系列项目,旨在展示 Kotlin 多平台技术的稳健且独特的应用场景。

部分项目通过 Compose Multiplatform 实现了近 100% 的界面代码共享,另一些则采用原生界面方案,仅共享数据模型和算法等核心逻辑。要创建全新的 Kotlin 多平台应用,推荐使用 Web 向导工具

您可以通过 GitHub 的 kotlin-multiplatform-sample 主题发现更多示例项目。若要全面了解技术生态,请查看 kotlin-multiplatform 主题。

JetBrains 官方示例

项目名称

描述

共享内容

核心组件库

用户界面方案

图片浏览器

支持拍摄、查看和存储照片的应用程序,集成地图功能。采用 Compose Multiplatform 构建界面,首次亮相于 KotlinConf 2023

  • 用户界面

  • 数据模型

  • 网络通信

  • 动画效果

  • 数据存储

  • kotlinx-serialization

  • kotlinx-datetime

  • kotlinx-coroutines

  • play-services-maps

  • play-services-locations

  • android-maps-compose

  • accompanist-permissions

  • Android 平台使用 Jetpack Compose

  • iOS/桌面/网页端使用 Compose Multiplatform

即时通讯

演示如何将 Compose Multiplatform 组件嵌入 SwiftUI 界面,实现在线聊天场景。

  • 用户界面

  • 数据模型

  • 网络通信

  • Android 平台使用 Jetpack Compose

  • iOS/桌面/网页端使用 Compose Multiplatform

  • iOS 平台同时支持 SwiftUI

KMM RSS 阅读器

展示 Kotlin 多平台在生产环境应用实践的 RSS 阅读器。默认采用原生界面实现,实验分支演示了 Compose Multiplatform 在 iOS 和桌面的应用。通过 Ktor HTTP 客户端 实现网络通信,XML 解析采用原生方案,使用 Redux 架构共享 UI 状态。

  • 数据模型

  • 网络通信

  • UI 状态

  • 数据存储

  • kotlinx-serialization

  • kotlinx-coroutines

  • ktor-client

  • voyager

  • coil

  • multiplatform-settings

  • napier

  • SQLDelight

  • Android 平台使用 Jetpack Compose

  • iOS/桌面端使用 Compose Multiplatform(实验分支)

  • iOS 平台支持 SwiftUI

Kotlin 多平台基础示例

简易计算器应用,演示如何通过 expect/actual 声明实现 Kotlin 与原生代码的集成。

算法逻辑

  • Android 平台使用 Jetpack Compose

  • iOS 平台使用 SwiftUI

推荐示例项目

项目名称

描述

共享内容

核心组件库

用户界面方案

Confetti

全面展示 Kotlin 多平台与 Compose Multiplatform 各种特性的会议日程应用。支持 Wear 和 Auto 平台,采用 GraphQL 进行客户端-服务端通信,架构设计在 KotlinConf 2023 有深度解析。

  • 用户界面

  • 数据模型

  • 网络通信

  • 数据存储

  • 导航逻辑

  • kotlinx-serialization

  • kotlinx-datetime

  • kotlinx-coroutines

  • decompose

  • koin

  • jsonpathkt-kotlinx

  • horologist

  • google-cloud

  • firebase

  • bare-graphql

  • apollo

  • accompanist

  • Android/Auto/Wear 平台使用 Jetpack Compose

  • iOS/桌面/网页端使用 Compose Multiplatform

其他社区示例

22 四月 2025