HarmonyOS native子线程请求网络同步的问题

现在需要pthread去开启一条线程,然后这个线程做的是耗时操作,包括调用ets方法采集一些基础的设备信息字段。

然后在子线程进行网络请求上报。然后子线程同步得到返回结果,进行保存。

因为有子线程验证,不允许在子线程调用ets ,所以根据建议

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/use-napi-ark-runtime-V5

使用napi_create_ark_runtime进行ets方法调用,但是发现在ets里面只能打印日志,无法调用别的方法,包括网络请求。

问题1:

目前这种napi_create_ark_runtime方式支持在ets里面网络请求么?

问题2:

针对我这种场景,native 开启子线程进行网络请求,并且同步拿到返回结果 。

应该怎么做呢?

HarmonyOS
2024-12-27 16:48:14
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
fox280

问题一:链接中场景介绍明确说明,目前目前仅支持在ArkTS模块中使用console接口打印日志,使用timer定时器功能,所以不支持网络请求。

问题二:native子线程同步获取ArkTS处理结果,可以使用三方库aki进行开发,aki的JSBind.bindFunction()绑定 JavaScript 的业务函数后,可由native直接调用。

参考链接: https://gitee.com/openharmony-sig/aki/tree/master#jsbindbindfunctionname-string-func-function

https://gitee.com/openharmony-sig/aki/tree/master/example/ohos/5_bind_from_js

https://developer.huawei.com/consumer/cn/doc/harmonyos-faqs-V5/faqs-ndk-33-V5

分享
微博
QQ
微信
回复
2024-12-27 19:17:53
相关问题
HarmonyOS 关于native线程问题
215浏览 • 1回复 待解决
native侧如何跟ArkTS侧线程通信
373浏览 • 1回复 待解决
HarmonyOS TaskPool线程单例问题
740浏览 • 1回复 待解决
HarmonyOS网络请求后JSON转换问题
1211浏览 • 1回复 待解决
网络请求创建后,持久化问题
1213浏览 • 1回复 待解决