HarmonyOS 鸿蒙Next应用集成sdk后,应用页面如何跳转到har包中的页面

HarmonyOS 鸿蒙Next应用集成sdk后,应用页面如何跳转到har包中的页面

可以通过命名路由跳转到har包中指定页面,首先看har包中的命名路由页面,如以下代码

@Entry({ routeName: ‘staticHarMainPage’})

@Entry

@Component

struct HarMainPage {

  @State message: string = ‘Hello World’;

  build() {

    RelativeContainer() {

      Text(this.message)

        .id(‘HarMainPageHelloWorld’)

        .fontSize(50)

        .fontWeight(FontWeight.Bold)

        .alignRules({

          center: { anchor: ‘container’, align: VerticalAlign.Center },

          middle: { anchor: ‘container’, align: HorizontalAlign.Center }

        })

    }

    .height(‘100%’)

    .width(‘100%’)

  }

}

此时可在har包中封装命名路由的方法进行跳转

export function routerToAnother(context: Context, requestParam: string, callback: AsyncCallback<EmResult>) {

  hilog.info(0x00000, TAG, ‘routerToAnother’);

  router.pushNamedRoute({

    name: ‘staticHarMainPage’,

    params: requestParam

  }, data => {

    if (data) {

      hilog.error(0x00000, TAG, ‘跳转失败:’ + JSON.stringify(data));

      return;

    }

    hilog.info(0x00000, TAG, ‘跳转成功’);

    hilog.info(0x00000, TAG, ‘传入的context:’ + JSON.stringify(context));

    context.eventHub.on(‘care’, callback)

  })

}

这样外部使用的时候无需关注命名路由的变化,便捷性增加,且不用担心混淆带来的影响


更多关于HarmonyOS 鸿蒙Next应用集成sdk后,应用页面如何跳转到har包中的页面的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next应用集成sdk后,应用页面如何跳转到har包中的页面的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next系统中,应用集成SDK后,若要实现应用页面跳转到har包中的页面,可通过以下方式操作:

首先,确保har包中的页面已正确配置命名路由。接着,在需要跳转的页面代码中,通过调用router模块的pushNamedRoute方法来实现跳转。该方法需要传入目标页面的路由名称及参数。

此外,由于hap和Har是鸿蒙应用的不同打包格式,直接跳转需要确保两者之间的通信和访问权限已正确配置。具体步骤包括:确保hap包和Har包都已在同一个应用中正确集成,并且两者之间的接口和数据访问权限已经通过manifest文件或其他配置方式进行了声明和授权。

如果在跳转过程中遇到问题,可检查目标页面的路由信息是否正确注册,以及hap包和Har包之间的配置是否正确。

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

回到顶部