文档管理中心
我的
|

HarmonyOS 5

【经验分享】【鸿蒙跨平台开发kmp入门】

1、kmp是什么

Kotlin Multiplatform:通过将kotlin代码编译成不同平台目标产物实现跨平台

  • 将.kt文件编译成.jar、.so、.js ....

两种跨平台方案:

Kotlin/Js:

  • 优点:基建适配成本低。编译产物基本可直接支持,只需局部适配
  • 缺点:性能差。多线程支持差,对接ArkTs并发模型会影响一致性

Kotlin/Native:

  • 优点:性能好。运行比原生快,多线程支持好
  • 缺点:基建适配成本高。编译器需要适配,跨语言调用成本高

2、如何开发——基建建设

•搭建KN鸿蒙编译器
Ø下载kotlin源码git clone https://github.com/JetBrains/kotlin.git
Ø参考 Linux Target 对接鸿蒙工具链,新增 Harmony Target
Ø编译出鸿蒙平台可运行的二进制产物(.so)./gradlew :kotlin-native:dist
ØGradle 插件适配

平台

编译器

链接器

C标准库

系统接口

Linux

LLVM11

GCC

glibc

POSIX

OHOS

LLVM15

LLVM

musl

POSIX

3、Kotlin Native与ArkTs交互

Kotlin Native编译出so通过Napi层和ArkT交互
 

点赞
收藏
1
回复
分享
举报
浏览382 发布于2026-01-26 12:36广东
全部评论
最多点赞
最新发布
最早发布
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。