Kotlin 多平台 (KMP) 允许在不同的平台之间共享 Kotlin 代码。Kotlin 多平台由 JetBrains 开发,使用 KMP 来定位移动平台是 稳定且可用于生产环境。
多平台 Jetpack 库
我们在 Google 内部使用 Kotlin 多平台,并建议使用 KMP 在 Android 和 iOS 平台之间共享业务逻辑。
我们许多 Jetpack 库已经迁移到利用 KMP 的优势,这些库具有与其 相应的 Android 目标 相似的兼容性保证。
以下 Jetpack 库提供 KMP 支持
Maven 组 ID | 最新更新 | 稳定版本 | 发布候选版本 | Beta 版本 | Alpha 版本 | 文档 |
---|---|---|---|---|---|---|
annotation (*) | 2024 年 9 月 4 日 | 1.8.2 | - | - | 1.9.0-alpha03 | |
collection | 2024 年 9 月 4 日 | 1.4.3 | - | - | 1.5.0-alpha01 | |
datastore | 2024 年 5 月 1 日 | 1.1.1 | - | - | - | 文档 |
lifecycle (*) | 2024 年 9 月 4 日 | 2.8.5 | - | - | 2.9.0-alpha02 | |
paging (*) | 2024 年 8 月 7 日 | 3.3.2 | - | - | - | |
room | 2024 年 8 月 21 日 | 2.6.1 | - | - | 2.7.0-alpha07 | 文档 |
sqlite | 2024 年 8 月 21 日 | 2.4.0 | - | - | 2.5.0-alpha07 | 文档 |
这些库的参考文档根据它们在通用代码、Android 和 Native 中的可用性对 API 进行标记。您也可以在每个页面的顶部按平台过滤声明。
该 kotlin-multiplatform-samples GitHub 存储库展示了这些库中的一些功能。
如果您对这些库有任何反馈,请通过 问题跟踪器 分享。
工具支持
您可以在 Android Studio 中打开、编辑和运行多平台项目。但是,某些 IDE 功能尚不适用于这些项目。要创建一个新项目,请使用 Kotlin 多平台向导 来自 Jetbrains。
我们还通过测试新版本的核心场景来确保 Android Gradle 插件与 Kotlin 多平台兼容。