【问题标题】:Kotlin Multiplatform Module LibraryKotlin 多平台模块库
【发布时间】:2021-07-03 03:44:59
【问题描述】:

我一直在开发一些我们希望为 Android 和 iOS 提供的库,到目前为止,我们分别为 Android 和 iOS 工作。现在考虑到这么多人开始在他们的应用程序中使用 KMM,我只是想知道是否有人尝试过为 Android 和 iOS 发布使用 Kotlin 创建的库,以及他们的经验以及在开发和集成过程中面临的挑战用户的那个图书馆。

如果我使用 Kotlin 1.3.X 版本构建我的库并且用户使用的是 1.2.X 或 1.4.X,会不会有任何影响?

【问题讨论】:

  • 简短回答,如果您使用 kotlin/native 版本很重要,因为 kotlin native 不能保证在版本之间是二进制兼容的。自 kotlin 1.4 以来,情况有所改善,并且在不久的将来应该会进一步改善。

标签: android kotlin kotlin-multiplatform kotlin-multiplatform-mobile kmm


【解决方案1】:

在 Kotlin 版本方面,Android 端将像任何其他 Android 库一样工作。我不确定 Kotlin 1.3 库在 JVM 上的 Kotlin 1.4 或 1.2 中的工作情况如何,但我认为此时“相当好”。我假设使用 1.3 库的 1.4 可以完全正常工作。

对于 iOS,您构建和发布的框架是它的“自己的世界”,因此调用它的 iOS 不知道也不关心它是 Kotlin,也不关心它是用什么版本的 Kotlin 构建的。

但是,如果您发布其他开发人员在本机中使用的 klib,则需要与不同的版本保持一致,但听起来您并不打算这样做。

我会强烈建议将 1.4.20 定位为原生的最低要求。不是出于任何特定原因,除了原生正在大量开发之外,每个版本都添加了重要的修复和/或改进。从 KMM 的角度来看,1.3.x 已经相当老了。如果您只针对 Xcode 框架,我会使用最新的稳定版 Kotlin 构建 iOS,截至今天 1.4.32。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-27
    • 2019-11-10
    • 1970-01-01
    • 2021-07-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-01
    相关资源
    最近更新 更多