KMP CMP 鸿蒙化 v1.1.0 发布统一渲染、性能与稳定性全面升级本文基于 CPF-KMP-CMP/docs 社区的发布说明KMP-v2.2.21-1.1.0 CMP-v1.9.2-1.1.0 撰写。一、背景KMP/CMP 鸿蒙化是什么Kotlin MultiplatformKMP与 Compose MultiplatformCMP让开发者用一套 Kotlin 代码同时覆盖 Android、iOS、桌面等平台。但长期以来HarmonyOS 一直是缺失的一块——官方 KMP/CMP 工具链没有提供鸿蒙目标。CPF-KMP-CMP 社区文档仓库见 atomgit.com/CPF-KMP-CMP/docs的工作就是把 Kotlin 工具链、Compose 运行时、Skia 渲染层skiko逐层适配到 OpenHarmony/HarmonyOS 上让 CMP 应用可以真正跑在鸿蒙设备上。本次发布KMP v2.2.21-1.1.0 / CMP v1.9.2-1.1.0基于社区Kotlin 2.2.21与Compose Multiplatform 1.9.2进行适配是工具链走向成熟的一次重要版本核心升级集中在统一渲染架构与GC/runtime 稳定性两条主线。二、发布版本全景2.1 KMP/CMP 鸿蒙版本信息名称版本号是否发布 Maven 仓kotlin2.2.21-1.1.0已发布compose-multiplatform1.9.2-1.1.0已发布compose-multiplatform-core1.9.2-1.1.0已发布skiko0.9.22.2-1.1.0已发布akinterop1.1.0已发布2.2 配套开发工具链名称版本号是否发布插件市场KMP OHOS Support1.0.0已发布2.3 配套 IDE、SDK 与手机 ROM名称版本号DevEco Studio6.0.0 及以上HarmonyOS SDKAPI17 及以上Android StudioMacHedgehog2023.1.1 Patch 2及以上Android StudioWindowsOtter 2 Feature Drop2025.2.2 Patch 1及以上手机 ROM最低 API17部分特性依赖更高 API Level可以看到整套适配已经形成闭环从编译器kotlin、UI 框架compose-multiplatform-core、图形后端skiko、互操作层akinterop到 IDE 插件KMP OHOS Support全部随版本同步发布到 Maven 仓与插件市场开发者开箱即用。三、核心特性解读3.1 统一渲染从自渲染孤岛到融入图形栈统一渲染是本版本最大的亮点它解决的是 CMP 在鸿蒙上最根本的架构问题——Compose 自己开 Surface 自绘还是接入系统 ArkUI 渲染管线。1与图形垂直整合吃满系统优化红利渲染流程与 HarmonyOS 图形栈垂直整合后系统级典型优化D-vSync、增量 OP 优化等能够直接作用于 CMP 页面整体负载降低约3%单帧渲染性能提升约10%。这类优化在自渲染方案下是无法享受的是融入而非旁挂架构的直接收益。2对接 ArkUI CAPI RenderNode干掉 70MB 内存开销此前 CMP 自渲染会额外引入一层多 buffer 的内存负荷每个实例约70MB。本版本在 HarmonyOS 侧对接了 ArkUI CAPI 的 RenderNode页面加载更快同时彻底消除了这 70MB/实例 的额外内存开销。对多实例、长列表、重 Compose 的应用来说这是实打实的减负。3Fusion 混排三明治架构的若干修正对于原生控件夹 Compose的混合渲染场景本版本做了多项关键修复子节点顺序修正为 BACK → Compose → FORE → TOUCHABLE避免后置 Surface 盖住 Compose 内容——这是混排场景下非常典型的白屏/内容被遮挡问题的根治新增自动化输入代理在 Fusion Renderer ArkUI 宿主中支持uitest uiInput text为自动化测试UI 自动化、稳定性回归补上了输入通路弹窗并行录制仅限 Skia 后端开启避免 Fusion 模式在 FFRT 子线程析构 RenderNode 导致 abortSkiko Overlay 双产物 零配置链接插件OHOS 侧上线 api 与 fusion overlay 双产物零配置链接插件支持 K/N 增量编译同时在 Overlay/modeboth 下让 Fusion hide 时延迟清理跳过 Skia heavy teardown避免无 DirectContext 时的 SIGSEGV。这一组修复的共同主题是把 Fusion 混排从能跑推进到稳跑——崩溃、遮挡、测试盲区逐一收口。3.2 common GC/runtime一个看似微小的修复restrace资源回收追踪的 heap size 读取被挪到RunFinalizers之前且仅在 restrace 真正启用时才计算。此前若 finalize 回调销毁了 meta-object之后再读typeInfoOrMeta_会触发偶发 crash。虽然改动只有几行但它消除的是低概率、难复现、堆栈指向 runtime 内部的疑难崩溃——这类问题对上层开发者几乎不可排查只能靠运行时侧根治。四、对开发者意味着什么升级成本可控所有组件均已发布 Maven 仓配合 KMP OHOS Support 1.0.0 插件工程侧基本只需对齐版本号与 IDE/SDK 环境DevEco Studio 6.0.0、HarmonyOS SDK API17。性能可感知渲染负载 -3%、单帧 10%、内存 -70MB/实例三项叠加对中大型 Compose 应用的体验提升是可测量的。稳定性更扎实Fusion 混排的 SIGSEGV/abort 修复与 runtime 偶发 crash 修复显著降低了混合开发与长时运行场景的崩溃率。可测试性补齐uitest 输入代理让鸿蒙侧的 UI 自动化测试第一次在 Fusion 模式下成为可能。五、结语从这版发布说明能清晰看到社区演进的节奏早期版本解决能不能跑而 1.1.0 开始系统性地解决跑得好不好、稳不稳——统一渲染把 CMP 拉进了鸿蒙图形栈的第一梯队GC/runtime 修复则是在还技术债。对于计划用 KMP/CMP 覆盖鸿蒙端的技术团队现在是跟进的好时机。相关资源发布说明原文KMP-v2.2.21-1.1.0 CMP-v1.9.2-1.1.0社区文档仓库CPF-KMP-CMP/docs