hsp和har包互相转换方案

hsp和har包互相转换方案

HarmonyOS
2024-05-22 22:32:36
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
落月无痕

一、hsp转har包

1.在hsp下的module.json5中,把"type": "shared"修改为"type": "har",删除"deliveryWithInstall"、"pages"字段。

hsp和har中module.json5默认配置(左hsp,右har)

2.由于har中不能包含page,需要先删除hsp中的page,如果项目其他模块需要跳转至hsp声明的Page时,此时要修改原有page为navigation(推荐)或命名路由方式,以navigation为例,使用组件导航的demo如下:

左entry中Index页面,右har1中pageOne页面

①router变navigation方式详见Navigation应用适配指南第三点Router对应适配修改:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V1/ts-basic-components-navrouter-0000001630265729-V1

②若沿用router的方式,需要使用命名路由的方式,可参考官网指南:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/arkts-routing-0000001820879797#ZH-CN_TOPIC_0000001820879797__%E5%91%BD%E5%90%8D%E8%B7%AF%E7%94%B1

3.然后再找到hsp下的hvigorfile.ts文件,将里面的hspTasks改为harTasks;

hsp和har中hvigorfile.ts默认配置(左hsp,右har)

4.(可选)如需要指定该library被依赖时的混淆规则(该项仅har模块可配置,详情可见[consumerFiles属性介绍]),可在build-profile.json5添加配置"consumerFiles": './consumer-rules.txt'

二、har转hsp包

1.在har下的module.json5中,把"type": "har"修改为"type": "shared",添加"deliveryWithInstall"

har和hsp中module.json5默认配置(左har,右hsp)

2.(可选)当Hsp需要对外声明router可跳转的page时,需要添加module.json5的"pages"字段,并在resources/base目录下建立profile/main_pages.json文件,添加配置参考如下,并在对应位置添加页面。

3.再找到har下的hvigorfile.ts文件,将里面的harTasks改为hspTasks(参考hsp转har包第三条);

4.har包的build-profile.json5默认会有"consumerFiles": './consumer-rules.txt' ,该项仅har模块可配置,为默认导出的混淆规则(详细描述见:代码混淆),需将其删除。


分享
微博
QQ
微信
回复
2024-05-23 16:24:37
相关问题
harhsp转换,有好的方案吗?
582浏览 • 1回复 待解决
HarmonyOS har是否不能互相引用
538浏览 • 1回复 待解决
求告知HAR如何转换HSP
319浏览 • 1回复 待解决
HarmonyOS imagePDF文件互相转换的能力
249浏览 • 1回复 待解决
从HAP的拆中,如何区分是HARHSP
1984浏览 • 1回复 待解决
HARHSP,分别是如何引入的?
1305浏览 • 1回复 待解决
关于harhsp的热重载使用
911浏览 • 1回复 待解决
HARHSP的使用场景区分
208浏览 • 1回复 待解决
HarmonyOS 多个HSP之间如何互相通讯
312浏览 • 1回复 待解决
如何处理HAR之间的互相依赖
2256浏览 • 1回复 待解决
HAR 是否可以依赖 HSP?
207浏览 • 1回复 待解决
HarmonyOS hsp调用har代码
184浏览 • 1回复 待解决