hsp和har包互相转换方案

hsp和har包互相转换方案

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

一、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转换,有好的方案吗?
238浏览 • 1回复 待解决
从HAP的拆中,如何区分是HARHSP
746浏览 • 1回复 待解决
HARHSP,分别是如何引入的?
378浏览 • 1回复 待解决
关于harhsp的热重载使用
401浏览 • 1回复 待解决
如何处理HAR之间的互相依赖
813浏览 • 1回复 待解决
arkTs能arkjs互相调用吗?
925浏览 • 1回复 待解决
有谁知道harpages的问题
576浏览 • 1回复 待解决
IDE无法新建harhsp模版
284浏览 • 1回复 待解决
请问哪里可以下载组件harChatLib.har
3254浏览 • 1回复 待解决
如何将har库迁移为hsp
369浏览 • 1回复 待解决
har里的worker如何在entry内使用
600浏览 • 1回复 待解决
应用,求解决方案
506浏览 • 1回复 待解决
HAR里子窗口无法加载页面
249浏览 • 1回复 待解决