HarmonyOS resourceManager使用问题

问题1:有一个lib_web模块为har,如下代码,传入模块名‘lib_web’拿到resourceManager,为了获取lib_web模块下名为web_ua的string,但是运行crash,报错异常提示的moduleName却变成了entry

代码:

let resourceManager = getContext().createModuleContext('lib_web').resourceManager; 
let ua = resourceManager.getStringSync($r('app.string.web_ua').id, harmonyUa, versionName, env, versionName);

异常:

Error message:Resource id invalid

Error code:9001001

SourceCode:

let ua = resourceManager.getStringSync({ “id”: 16777288, “type”: 10003, params: [], “bundleName”: “com.pingan.eclaim.test”, “moduleName”: “entry” }.id, harmonyUa, versionName, env, versionName);

问题2:entry依赖了har包tools,但是entry里的代码中无法通过$r(‘app.string.text’)方式引用har包tools里名为text的string。

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

1、编译缓存问题,把缓存的全删了,重新编译

2、如你所述,因为hsp是独立的包,getContext()的时候上下文的context会存在不一致。har是最终会打入到hsp或者hap包里面,成为hsp或者hap包源码的一部分。也就没有下文的context的概念,如果是打入hsp,那么就是hsp的上下文,如果har打入的是hap包,getContext()就是hap包的上下文

分享
微博
QQ
微信
回复
2024-08-23 15:05:28
相关问题
HarmonyOS filePreview使用问题
378浏览 • 1回复 待解决
HarmonyOS textpicker使用问题
306浏览 • 1回复 待解决
HarmonyOS onAreaChange使用问题
823浏览 • 1回复 待解决
HarmonyOS Slide使用问题
334浏览 • 1回复 待解决
HarmonyOS jsbridge使用问题
34浏览 • 1回复 待解决
HarmonyOS Slider使用问题
43浏览 • 1回复 待解决
HarmonyOS 动画使用问题
32浏览 • 1回复 待解决
HarmonyOS ProtoBuffer使用问题
512浏览 • 1回复 待解决
HarmonyOS Scroll使用问题
26浏览 • 1回复 待解决
HarmonyOS customdialog使用问题
677浏览 • 1回复 待解决
HarmonyOS RichEditor使用问题
23浏览 • 1回复 待解决
HarmonyOS Imageknife使用问题
28浏览 • 1回复 待解决
HarmonyOS websocket使用问题
288浏览 • 1回复 待解决
HarmonyOS lottie使用问题
393浏览 • 1回复 待解决
HarmonyOS RichEditor 使用问题
535浏览 • 1回复 待解决
HarmonyOS Navigation 使用问题
447浏览 • 1回复 待解决