HarmonyOS ArkTS注册Native C函数监听

现在有个需求设置一个C函数的监听,C层有个长链接收到云端的通知然后想要调用ArkTS函数,这个怎么处理呢?

HarmonyOS
2024-08-27 10:22:23
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

Native调ArkTS的本质就是在ArkTS侧将ArkTS的方法以参数的形式传给Native。如果需要在Native侧在需要时再调用ArkTS的方法,可以先将ArkTS方法传给Native侧,再配合多线程实现,如woker:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-worker-V5#threadworker9

// arkts 
import worker from ‘@ohos.worker’; 
import editBoxNapi from ‘libeditbox.so’; 
const workerPort = worker.workerPort; 
editBoxNapi.setEditBoxShowCallback((msg: string) => { 
  workerPort.postMessage({ type: ‘OpenEditBox’, data: msg }); 
}) 
// napi 
static napi_ref callback = nullptr; 
static napi_value SetEditBoxShowCallback(napi_env env, napi_callback_info info) { 
  size_t argc = 1; 
  napi_value args[1] = {nullptr}; 
  auto status = napi_get_cb_info(env, info, &argc, args, nullptr, nullptr); 
  napi_create_reference(env, args[0], 1, &callback); 
  return nullptr; 
}
分享
微博
QQ
微信
回复
2024-08-27 18:48:47
相关问题
Native调用ArkTS侧类函数
944浏览 • 1回复 待解决
ArkTS调用C++类中的成员函数
1278浏览 • 1回复 待解决
注册监听关机事件,该如何处理?
772浏览 • 1回复 待解决
native使用fork函数,出现cppcrash
1644浏览 • 1回复 待解决
HarmonyOS ArkTSC/C++的交互
720浏览 • 1回复 待解决
系统监听注册的on和off的用法问题
1840浏览 • 1回复 待解决
HarmonyOS 项目使用c++库导出函数报错
235浏览 • 1回复 待解决
HarmonyOS Native 实例化 ArkTS 对象
129浏览 • 1回复 待解决
如何为 C++ 提供回调函数
2438浏览 • 1回复 待解决
HarmonyOS ArkTS调用Native接口机制咨询
435浏览 • 1回复 待解决
HarmonyOS ArkTsC++实时通信
132浏览 • 1回复 待解决
HarmonyOS ArkTS具备koltin扩展函数能力吗
366浏览 • 1回复 待解决
TS侧如何批量传递函数native
952浏览 • 1回复 待解决
通过Native 调用c++层实现文本绘制
1000浏览 • 1回复 待解决