HarmonyOS 关于ArkTS中使用Rn搭建问题

基于资料ReactNative for OpenHarmony CAPI版本开发使用指导-5.00.0.302.pdf 中4.2内容搭建,Rn部分功能模块。如图中cpp模块是否必须,处理主要用来通信是否还有其他作用。

HarmonyOS 关于ArkTS中使用Rn搭建问题 -鸿蒙开发者社区

HarmonyOS
2024-12-25 09:19:05
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
aquaa

CMakeLists.txt配置文件引入cpp文件配置,三方库配置。

packageProvider.cpp,引入三方库时,需要在这里加入引入的包名,比如:#include “WebViewPackage.h” 和std::make_shared<WebViewPackage>(ctx),详情可以参考rn资料中参考三方库的引入。

SampleTurboModulePackage.cpp SampleTurboModulePackage.h 这两个文件应该是对引入的三方包进行使用,通常引用三方库不需要对这里进行修改,是对三方库通信的,这里就会引用到TurboModule里面的文件。

RN这个文件夹主要是选择不同ArkTS还是capi,在config.ts中// ArkTS/CAPI 开关配置 export const ENABLE_CAPI_ARCHITECTURE = true; 通过配置对rn和HarmonyOS侧链接所使用的ArkTS和capi进行一个选择,建议使用capi,后期主要维护和升级的是capi.

TurboModule这里主要是用于同通信的。

TurboModule:TurboModule是React Native中的一种新的原生模块系统,TurboModules是创建利用某些平台特定API的库的首选方法。它与Fabric和JSI结合使用,可以提供更高效的原生模块调用方式。

TurboModule是React Native中的一个新特性,它旨在改善原生模块(Native Modules)的性能和可维护性。可以通过React Native的「Bridge」帮助JavaScript和原生代码进行交互,并使用跨平台的数据格式 JSON 进行通讯。

旧架构启动时Native会加载所有的Native Modules,导致启动性能变差,以及RAM资源占用大。

Turbo Native Modules与Native Modules相比,存在以下优势:

各个平台的强类型接口声明是一致的;

可以使用C++编写模块或迁移其它平台的原生代码,以此避免在跨平台重复实现模块;

模块支持懒加载,可以节省内存,加快App启动速度;

通过替换Bridge为JSI(使用原生代码编写的 JavaScript 接口),提升JavaScript与原生代码的通讯效率。

分享
微博
QQ
微信
回复
2024-12-25 12:22:38
相关问题
HarmonyOS 关于Rn框架搭建问题(重要)
527浏览 • 1回复 待解决
HarmonyOS RN 项目中使用自定义字体
182浏览 • 1回复 待解决
HarmonyOS RN关于drawer、stack的用法问题
348浏览 • 1回复 待解决
HarmonyOS 如何在ArkTS中使用注解?
577浏览 • 1回复 待解决
arkts 关于异步的问题
589浏览 • 1回复 待解决
HarmonyOS 关于ArkTS中的!使用
1054浏览 • 1回复 待解决
如何在ArkTS中使用闭包
939浏览 • 1回复 待解决
HarmonyOS 关于仓颉和ArkTS问题
337浏览 • 2回复 待解决
HarmonyOS 关于arkts中的协议问题
147浏览 • 1回复 待解决
内网开发环境搭建问题
390浏览 • 1回复 待解决
HarmonyOS Text 中使用 ImageSpan 问题
702浏览 • 1回复 待解决
HarmonyOS关于TS转ArkTS的语法问题
767浏览 • 1回复 待解决
关于 Extend 使用问题
511浏览 • 1回复 待解决
HarmonyOS关于API使用问题
893浏览 • 1回复 待解决
HarmonyOS 关于Iconfont如何使用问题
461浏览 • 1回复 待解决
HarmonyOS 关于使用@BuilderParam的问题
1003浏览 • 1回复 待解决
HarmonyOS RN Codegen问题
268浏览 • 1回复 待解决
HarmonyOS RN相关问题
909浏览 • 1回复 待解决