HarmonyOS 鸿蒙Next hsp模块生成的har包引入问题

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

HarmonyOS 鸿蒙Next hsp模块生成的har包引入问题

hsp模块编译会生成har包和hsp包,在另一个项目dependences引入时找不到hsp包

另一个项目引入该har包后则会提示安装失败:

06/28 11:46:14: Install Failed: error: failed to install bundle.

code:9568305

error: dependent module does not exist.

该怎么解决这两个问题?

6 回复

给官方提问了,知道咋用的了:

hsp分两种情况:

1:hsp模块和项目entry处于同一个工程下,则entry主模块直接dependences-hsp模块的目录即可,entry可以直接使用hsp的所有类、方法,这种也不用处理第二种的hsp包问题!!

2:hsp模块和项目entry处于不同工程,则hsp和entry两个工程app.json5里的bundleName需要保持一致,而且两者的签名也需要保持一致。entry引入hsp编译生成的har包,之后设备需要先安装hsp编译生成的hsp包,再运行entry所在的工程或编译生成的hap包,不然会报错!! 该方式,entry只能使用hsp模块在index.ets导出的类、方法

尽量不要使用HSP,使用HAR

要直接编译引用的,你需要配置Edit Configurations

har不能使用route…所以才使用hsp har怎么跳转界面?

看了官方的文档,hsp和entry都是在同一个工程下的,那肯定没问题,关键是不同工程,怎么引用hsp没讲…晕死

HSP的定义是动态共享资源包,是解决多依赖导致编译生成的产物有多份的,可是鸿蒙的HSP设计原理没问题,落地有问题,不好用,使用HAR吧~~

关于HarmonyOS 鸿蒙Next中hsp模块生成的har包引入问题,以下是一些专业的解答:

首先,需要明确的是,HSP(动态共享包)和HAR(静态共享包)在HarmonyOS中扮演着不同的角色。HSP主要用于运行时复用,支持应用内共享,可以避免多包间代码和资源的重复拷贝,从而减小应用包大小。而HAR则用于编译态复用,支持应用内共享,也可以发布后供其他应用使用。

针对hsp模块生成的har包引入问题,可能存在以下情况:

  1. 如果hsp模块被正确编译并生成了har包,但在其他模块中无法引入,请检查har包的路径和名称是否正确,并确保在项目的配置文件(如oh-package.json5)中正确引用了该har包。
  2. 如果har包引入后无法使用其中的类、方法或组件,请检查har包是否成功导出所需的内容,并在使用方正确导入了这些内容。

如果以上步骤都无法解决问题,可能是由于HarmonyOS的版本更新或特定配置导致的兼容性问题。此时,建议查阅HarmonyOS的官方文档或联系官网客服获取进一步的帮助。官网地址是:https://www.itying.com/category-93-b0.html

回到顶部