> 技术文档 > 鸿蒙中如何从一个App跳转到另一个App?_鸿蒙 跳转其他应用

鸿蒙中如何从一个App跳转到另一个App?_鸿蒙 跳转其他应用


 注:适用版本(HarmonyOS NEXT/5.0/API12+)

在鸿蒙中,我们再开发过程当中或多或少都会遇见想要从一个App的页面跳转至另一个App的页面,这个时候我们要怎么进行跳转呢,其实在HarmonyOS开发者文档中只需要用到Want对象和startAbility()方法进行跳转就可以了!接下来看实操ShowTime~

结尾处有链接和代码流程图:

1.我们要先准备两个按钮,方便后续跳转(在开发过程当中我们可以进行封装或者传参)

2.给按钮添加点击事件 点击事件中我们就要用到Want和两个 包名

bundleName 、abilityName

注意:bundleName和abilityName是必须的 分别代表 包名(就是你要跳转项目的包名)和 EntryAbility的文件夹名字

.onClick(() => { const want: Want = {  bundleName: \'com.ithm.base.time.driver\',  abilityName: \'EntryAbility\' }

你的项目包名是在AppScope中就能看到 

EntryAbility就在文件夹 entryAbility下 一般也就是叫EntryAbility

3.做完第二步之后我们进行调用 startAbility方法

但是调用之前我们要先获取上下文 而参数就是want

像这样

const ctx = getContext(this) as common.UIAbilityContext ctx.startAbility(want)

这时我们就完成了最基本的步骤,就可以实现跳转了

额外拓展跳转至系统页面的操作详细看下面总代码

总代码:

开发者文档:

Want

startAbility()

@Entry@Componentstruct Index {build(){Column(){Column({space: 5}) { Button(\'跳转到另一个App页面\') .onClick(() => { const want: Want = {  bundleName: \'com.ithm.base.time.driver\',  abilityName: \'EntryAbility\' } const ctx = getContext(this) as common.UIAbilityContext ctx.startAbility(want) }) Button(\'跳转到设置页面\') .onClick(() => { const want: Want = {  bundleName: \'com.huawei.hmos.settings\',  abilityName: \'com.huawei.hmos.settings.MainAbility\',  uri: \'application_info_entry\',  parameters: { // 修改成你的应用包名 pushParams: \'com.itcase.interview_tong\'  } } const uiContext = getContext(this) as common.UIAbilityContext uiContext.startAbility(want) }) }.justifyContent(FlexAlign.Center) .height(\'100%\') .width(\'100%\')}}

当然这只是一种业务场景的展示,如有需要可自行测试~