HarmonyOS worker问题咨询?

如果worker写在了某一个har包中,其他工程引用这个har包,该怎么引用,路径写什么?

阅读 461
1 个回答

参考:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/worker-introduction-V5\#worker注意事项

这里面注明了“创建Worker对象时仅允许加载本模块下存在的worker线程文件,不支持加载其他模块的worker线程文件。若依赖其他模块提供的Worker功能,需要将Worker实现的整套逻辑封装到方法中,将方法导出后供其他模块使用。”即如果static lib被打包成了har,把这个har放到其他工程里引用的话,当前无法直接使用路径去new worker,需要使用export的形式,由har包内创建worer并导出。

参考示例代码:

import { worker } from '@kit.ArkTS';
export class ToolManager {
  harWorkerTest1(): worker.ThreadWorker {
    let workerInstance3 = new worker.ThreadWorker('../workers/Worker.ets');
    return workerInstance3;
  }
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进