React Native for OpenHarmony (RNOH)
将 React Native 开发体验完整带入鸿蒙生态 (OpenHarmony)。高性能桥接、完整 Fabric 支持,让 RN 应用无缝运行于鸿蒙。

目录
项目简介
RNOH (React Native for OpenHarmony) 是 OpenHarmony 系统级的 RN 渲染后端与原生桥接实现。
核心特性:
- 使用 React 语法及 React Native 生态库直接构建鸿蒙应用
- 深度融合 ArkUI NDK,性能接近原生
- 完整 Fabric 架构支持
- MIT 协议开源
快速链接
最新通知
RNOH 0.82.30 正式发布

首个 0.82 稳定演进版本
- 适配 RN 0.82 新架构
- Hermes 内存优化
📅 发布时间: 2026-5-20
📦 查看 NPM 版本
其他版本
| 版本 |
状态 |
说明 |
发布时间 |
| 0.84.x |
 |
构建分支开放预览,hermesV1成为默认 |
2026-Q2 |
| 0.77.x |
 |
新架构增强 |
2026-03-20 |
| 0.72.x |
 |
长期维护版本,稳定可靠 |
2026-03-15 |
版本演进
RNOH 社区版本致力于在鸿蒙设备上提供与 React Native 上游尽可能一致的开发体验。
适配策略:
- 对齐上游版本节奏,聚焦关键版本
- 优先适配对业务与生态影响最大的版本
- 平衡稳定性与创新,引入上游特性更新和性能优化
2026 年计划适配 4 个关键版本(上游规划 6 个 release)。
版本路标
timeline
title RNOH 版本路标(已交付 / 进行中 / 规划)
section 已交付
2023 Q4 : 0.72 LTS 首版
2025 Q3 : 0.77 稳定版
2026 Q1 : 0.82 RC版
section 进行中与规划
2026 Q2 : 0.84 构建中
2026 Q3 : 0.86 见版本矩阵
2026 Q4 : 0.88 见版本矩阵
季度规划:
| 季度 |
版本 |
状态 |
| Q1 |
0.82.x |
✅ 已发布 |
| Q2 |
0.84.x |
🚧 适配中 |
| Q3 |
0.86.x |
📋 规划中 |
| Q4 |
0.88.x |
📋 规划中 |
支持矩阵
| 版本 |
上游发布 |
RNOH 状态 |
RNOH 发布 |
支持周期 |
| 0.89.x |
2026-12-07 |
- |
- |
- |
| 0.88.x |
2026-10-12 |
适配计划 |
- |
2026 Q4 |
| 0.87.x |
2026-08-10 |
- |
- |
- |
| 0.86.x |
2026-06-08 |
适配计划 |
- |
2026 Q3 |
| 0.85.x |
2026-04-06 |
- |
- |
- |
| 0.84.x |
2026-02-09 |
适配计划 |
- |
2026 Q2 |
| 0.83.x |
2025-12-08 |
- |
- |
- |
| 0.82.x |
2025-10-06 |
✅ 已适配 |
2026 Q1 |
长期支持 |
| 0.77.x |
2025-01-21 |
✅ 已适配 |
2025 Q3 |
长期支持 |
| 0.72.x |
2023-06-21 |
✅ 已适配 |
2023 Q4 |
LTS |
版本特性
0.84.x 特性
0.82.x 特性
0.77.x 特性
0.72.x 特性
RNOH 与 RN 版本关系
详细版本号命名规则、采用策略与开发者协同建议,请参阅:RNOH与RN版本关系
RNOH 与 RN 社区共性问题清单
RNOH 与 RN 社区在开发、适配和迁移过程中的共性问题(Yoga 浮点舍入误差、onLayout 无限循环等),请参阅:RNOH与RN社区共性问题清单
问题定位
RNOH 语料已进入 Gemini、DeepSeek、GLM 等主流 AI 模型
推荐使用 AI 工具结合日志与上下文快速定位问题。提供 错误堆栈 + RNOH 版本 + 设备型号 可获得精准的根因分析与修复建议。
稳定性问题
| 步骤 |
操作 |
| 1. 收集日志 |
使用 DevEco Studio 获取 crash 日志或 tombstone |
| 2. 分析堆栈 |
重点关注 libRNOH.so、libreact_nativemodule.so 符号 |
| 3. 常见原因 |
线程未同步、NativeModule 生命周期错误、内存越界 |
| 4. AI 提示词 |
"RNOH 0.82 在鸿蒙折叠屏上打开 Modal 闪退,堆栈如下:…… 请分析可能原因。" |
| 5. 验证方案 |
隔离可疑模块,使用 AddressSanitizer 检测 |
性能问题
| 步骤 |
操作 |
| 1. 抓取数据 |
React DevTools Profiler + 鸿蒙 DevEco Profiler |
| 2. 识别瓶颈 |
JS 线程阻塞、UI 线程掉帧、过度渲染 |
| 3. 优化手段 |
FlashList 替代 FlatList、避免匿名函数、启用 Hermes 并发 GC |
| 4. AI 提示词 |
"RNOH 0.77 长列表滑动卡顿,JS 线程占用 80%,请给出优化策略。" |
| 5. 验证 |
对比优化前后帧率曲线 |
工程问题
| 步骤 |
操作 |
| 1. 编译错误 |
检查 git submodule、CMakeLists 依赖、RNOH 与 RN 版本对齐 |
| 2. 链接错误 |
确认 so 库完整打包,使用 readelf 检查符号 |
| 3. 模块未找到 |
检查 TurboModule 注册与 Codegen 生成 |
| 4. AI 提示词 |
"RNOH 编译报错 undefined symbol: jsi::Value,环境 0.82,如何解决?" |
| 5. 复现隔离 |
新建最小 demo 工程逐步添加模块定位 |
推荐工作流: 粘贴错误堆栈 + 版本信息 + 设备型号 → AI 提供根因与补丁建议 → 提效 80%
社区运作规范
RNOH 社区建立了完整的运作规范体系,确保协作高效、代码可追溯、版本可控。
规范文档索引
| 规范名称 |
说明 |
文档链接 |
| 仓库分支管理规范 |
分支模型、命名规范、合并流程、版本生命周期 |
查看详情 |
| 开发者共建指南 |
代码提交全流程、Commit/PR/Changelog 联动、DCO 签署 |
查看详情 |
| Commit 和 PR 规范 |
Commit 格式、Scope 规范、PR 模板、Commitlint 校验 |
查看详情 |
| Changelog 规范 |
变更日志格式、类型分类、破坏性变更标注 |
查看详情 |
| Issue 管理规范 |
Issue 处理 SLA、标签体系、模板要求、状态流转 |
查看详情 |
| RNOH 包管理规范 |
npm 发包格式、版本号规则、dist-tag 规范 |
查看详情 |
核心协作流程
graph LR
A[提交 Issue] --> B[审核确认]
B --> C[创建分支]
C --> D[开发 + 测试]
D --> E[提交 PR]
E --> F{CI 通过?}
F -->|否| D
F -->|是| G{Review 通过?}
G -->|否| D
G -->|是| H[合并代码]
H --> I[更新 Changelog]
I --> J[版本发布]
快速参考
分支命名规范
| 分支类型 |
命名规范 |
示例 |
| 版本演进主干 |
${version}-main |
0.82-main |
| 商业发布分支 |
${version}-stable |
0.82-stable |
| 特性分支 |
${version}-feature/<name> |
0.82-feature/new-arch |
| 修复分支 |
${version}-hotfix/<issue> |
0.82-hotfix/123 |
Commit 格式规范
<type>(<scope>): <subject>
<body>
<footer>
常用 type: feat / fix / docs / refactor / perf / chore
示例: feat(ScrollView): 添加下拉刷新支持
Issue 处理 SLA
| 等级 |
首次响应 |
处理时间 |
适用场景 |
| P0 紧急 |
< 2小时 |
< 24小时 |
核心崩溃、安全漏洞 |
| P1 高 |
< 8小时 |
< 3天 |
主要功能异常 |
| P2 中 |
< 24小时 |
< 7天 |
非核心功能异常 |
| P3 低 |
< 72小时 |
< 30天 |
优化建议、新功能请求 |
版本号格式
[RN主版本].[RN次版本].[鸿蒙化迭代序号]
示例: 0.72.119、0.82.34
安装方式:
npm install @react-native-oh/react-native-harmony@0.72-stable
共建社区
React Native for OpenHarmony 由开放原子开源基金会 SIG 共建
社区交流
微信群:

邮件列表:
待补充
Built with ❤️ by OpenHarmony React Native SIG