Rust × 开源鸿蒙,这个开源项目值得关注 | 旋武社区 Rust 开源项目推荐
发表于:2026-08-28
Rust 新闻
摘要
在开源鸿蒙生态逐步发展的背景下,开发者们面临着多种技术选型。ArkTS 是开源鸿蒙官方推荐的开发语言,但对于已有 Rust 技术积累、或对性能和底层控制有额外需求的团队来说,能否用 Rust 开发开源鸿蒙应用,是一个值得关注的问题。
一套让Rust与开源鸿蒙生态结合的开发框架。
在开源鸿蒙生态逐步发展的背景下,开发者们面临着多种技术选型。ArkTS 是开源鸿蒙官方推荐的开发语言,但对于已有 Rust 技术积累、或对性能和底层控制有额外需求的团队来说,能否用 Rust 开发开源鸿蒙应用,是一个值得关注的问题。
今天介绍的开源项目——ohos-rs,正是这个方向上的一个尝试。
社区项目地址:https://xuanwu.openatom.org/articles/project/ohos-rs
ohos-rs 是什么?
ohos-rs 是一个允许开发者使用 Rust 语言构建开源鸿蒙原生 SDK 的框架。
它 Fork 自知名的 Rust 原生模块框架 napi-rs,并针对开源鸿蒙系统进行了适配。由于开源鸿蒙的 N-API 接口与 Node.js 的 N-API 在概念上有相似之处,ohos-rs 得以复用这套思路,让 Rust 代码可以运行在开源鸿蒙(OpenHarmony/HarmonyNext)环境中。
项目用途
用 Rust 编写对性能敏感的逻辑模块,再通过 N-API 暴露给上层的 ArkTS 代码调用。这样,UI 层用 ArkTS 保持开发效率,底层计算用 Rust 保证性能。
项目特点
1. 与 napi-rs 能力对齐
项目团队从 2023 年 10 月开始验证,2024 年 10 月发布了 1.0.0 版本。该版本迁移并通过了大量 napi-rs 的测试用例,能力基本与 napi-rs 对齐,在多个已上线的应用和社区 SDK 中得到了实际验证。
2. 较流畅的开发体验
ohos-rs 提供了一套工具链,可以按照类似标准 Rust 项目的方式来开发开源鸿蒙模块:
- 脚手架工具 ohrs:通过 cargo install ohrs 安装,使用 ohrs init 和 ohrs build 即可快速创建和构建项目。
- 宏(Macro)支持:通过 #[napi] 宏,可以相对简洁地将 Rust 函数暴露给 ArkTS 调用,减少了手动绑定的工作量。
3. 异步支持
ohos-rs 默认使用 tokio 作为异步运行时,便于编写异步 Rust 代码。对于轻量级场景,也可以选择 ohos-ffrt(开源鸿蒙 FFRT 绑定)作为替代方案,以减小包体积和启动开销。
4. 应用层面的探索
除了编写原生模块,ohos-rs 目前也在探索支持完整的开源鸿蒙应用开发。通过 @ohos-rs/ability 这个 ArkTS 包,开发者可以在 ArkTS 入口中继承 RustAbility,将应用生命周期事件转发给 Rust 侧处理。这为实现更复杂的应用逻辑提供了另一种可能。
许可证
ohos-rs 采用 MIT 许可证。
小结
ohos-rs 将成熟的 napi-rs 开发模式引入 OpenHarmony 生态,有效降低了 Rust 原生模块的开发成本。如果你正在构建鸿蒙原生 SDK 或需要高性能底层能力,这个项目值得尝试。
项目官网:https://ohos.rs。
代码仓库:https://github.com/ohos-rs/ohos-rs。
旋武开源社区
让基础设施更坚实,让技术演进更从容
