如何将 Java 库与 KMM(Kotlin 多平台移动版)结合使用

问题描述 投票:0回答:1

我正在开发一个 Android 应用程序,它使用 ST25 库 来读取 NFC ST 标签。我想使用 KMM(基于 Kotlin跨平台解决方案)将我的应用程序移植到 iOSST25 库 是用 Java 编写的,我不知道是否可以将它与 KMM 一起使用,或者我是否应该寻找替代方案。 ST25 sdk 包含一个 .aar 和一个 .jar。

我的问题是,我可以将 ST25 库与 KMM 一起使用吗?如果是,我如何将其集成到我的项目中?如果不是,是否有用 Kotlin 或与 KMM 兼容的其他语言编写的等效库?

我尝试在网上做一些研究,但只找到了相关的旧帖子,并想知道是否有关于 KKM 中 Java 库的使用的任何更新。

java kotlin nfc kotlin-multiplatform st25
1个回答
1
投票
您的应用程序的 iOS 版本不会在 JVM 上运行,它在 iOS 上本机运行。因此,您不能在 iOS 应用程序中使用 JVM 库。

也就是说,Kotlin 多平台技术确实允许您编写通用代码来调用一些在不同平台上有不同实现的函数/API。

这意味着,如果您找到一个 iOS 库来执行此操作,您可以将所需的通用 API 定义为通用代码中的

expect

 声明,然后通过委托给 ST25 在 JVM 源集中编写 
actual
 实现JVM 库,以及通过委托给 iOS 库的 iOS 源集中的其他 
actual
 实现。

© www.soinside.com 2019 - 2024. All rights reserved.