HarmonyOS 鸿蒙Next 跨模块路由@bundle:com.xx.xx/path/pages无法跳转

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

HarmonyOS 鸿蒙Next 跨模块路由@bundle:com.xx.xx/path/pages无法跳转

【关键字】

跨模块路由跳转 / @bundle:com.xx.xx/path/pages / HSP

【问题描述】

官方FAQ文档中提到的跨模块路由可以通过传递@bundle:com.xx.xx/path/pages的方式实现,但实际测试无法跳转,只能用pushNameRoute来实现,而这个方法需要逐个导入对应的文件,严重拖慢开发效率。

【解决方案】

  1. 检查一下url: 参考:’@bundle:com.samples.hspsample/library/ets/pages/Menu’,包名/模块名/ets…,包名和模块名之间不要添加src和main,最后一个文件名检查一下是否大写。
  2. Edit Configurations->deploy multi hap中有没有将HSP包添加进去和HAP包一同运行。

具体使用方式可以参考该文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/in-app-hsp-0000001774119898#ZH-CN_TOPIC_0000001774119898__%E9%A1%B5%E9%9D%A2%E8%B7%AF%E7%94%B1%E8%B7%B3%E8%BD%AC


更多关于HarmonyOS 鸿蒙Next 跨模块路由@bundle:com.xx.xx/path/pages无法跳转的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

7 回复

就是路径的问题 成了 谢谢大佬

更多关于HarmonyOS 鸿蒙Next 跨模块路由@bundle:com.xx.xx/path/pages无法跳转的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


楼主,按照写了,还是不行,还是报 E 03900/Ace: [manifest_router.cpp(GetPagePath)-(2)] [Engine Log] can’t find this page <private> path这个错误?

sdk版本:

api8

api8跟next区别很大,不通用,

找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17

如果是har包中写的页面,也适用吗

  • 页面用命名路由

针对帖子标题中提到的“HarmonyOS 鸿蒙Next 跨模块路由@bundle:com.xx.xx/path/pages无法跳转”的问题,以下是专业回答:

在HarmonyOS鸿蒙Next系统中,跨模块路由跳转失败可能由多种原因引起。首先,确保目标模块的bundle标识符com.xx.xx正确无误,并且该模块已正确安装并激活。其次,检查路由路径/path/pages是否准确,包括路径中的每个部分都需与目标页面定义一致。

此外,跨模块路由依赖于系统的路由服务,确保路由服务正常运行且没有权限或安全策略阻止跳转。如果使用了自定义路由协议或中间件,还需验证相关配置和代码实现是否正确。

若使用了鸿蒙系统提供的路由API,请确认API调用方式符合官方文档要求,包括参数传递、回调处理等。同时,检查日志输出,看是否有相关错误信息提示,这有助于定位问题。

如果以上步骤均无法解决问题,可能是系统或框架层面的bug,建议检查鸿蒙系统的更新日志和已知问题列表,看是否有相关修复或说明。

如果问题依旧没法解决请联系官网客服,官网地址是: https://www.itying.com/category-93-b0.html

回到顶部