HarmonyOS 鸿蒙Next har包资源引用有问题

发布于 1周前 作者 nodeper 来自 鸿蒙OS

HarmonyOS 鸿蒙Next har包资源引用有问题

在一个Static library模块里面使用$r方法,然后用字节码类型方式打包成har包,在entry里面进行引入使用,在真机调试时报错;换成非字节码方法打包则不会报错
Device info:HUAWEI Mate 60 Pro

Build info:ALN-AL80 5.0.0.26(SP8DEVC00E29R4P6log)

Fingerprint:2bee50539b230c876e6a26bbe54f6938bf8a2f0baf640c40bbfed5a380850440

Module name:com.test.myapplication2

Version:1.0.0

VersionCode:1000000

PreInstalled:No

Foreground:No

Pid:30702

Uid:20020150

Reason:ReferenceError

Error name:ReferenceError

Error message:getCurrentModuleName is not defined

Stacktrace:

    at func_main_0 (library/build/default/generated/profile/default/ModuleInfo.ts:3:40)

2 回复
如果har包是字节码,app的工程配置文件需要设置"useNormalizedOHMUrl": true。设置"useNormalizedOHMUrl": true后,对项目的检查比较严格,不能相同资源出现不同引入方式,需要资源统一。
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/ide-hvigor-build-profile-V5

HarmonyOS鸿蒙Next中HAR包资源引用问题,可能是由于HAR包不支持直接访问AppScope中的资源所致。建议创建一个专门的HAR包用于集中管理共享资源,并在其他HAR包中通过依赖配置和接口导出方式间接访问这些资源。同时,确保HAR包之间的依赖关系正确配置,避免循环依赖和依赖传递问题。如果问题依旧没法解决,请加我微信,我的微信是itying888。

回到顶部