HarmonyOS 鸿蒙Next如何跳转其他app

HarmonyOS 鸿蒙Next如何跳转其他app

请问在鸿蒙app中,如何通过url跳转到其他app?是否提供了相应的接口

 

2 回复
import common from '@ohos.app.ability.common';
[@Entry](/user/Entry)
[@Component](/user/Component)
struct Index10 {
  [@State](/user/State) message: string = 'Hello World';
  build() {
    Row() {
      Column() {
        Button("显式启动其他的UIAbility")
          .fontSize(36)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            let context = getContext(this) as common.UIAbilityContext;
            context.startAbility({
              action: 'ohos.want.action.viewData',
              entities: ['entity.system.browsable'],
              abilityName: 'MainAbility',
              uri: 'xxxx',
            })
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

显示拉起:

import common from '@ohos.app.ability.common';
[@Entry](/user/Entry)
[@Component](/user/Component)
struct Index10 {
  [@State](/user/State) message: string = 'Hello World';
  build() {
    Row() {
      Column() {
        Button("显式启动其他的UIAbility")
          .fontSize(36)
          .fontWeight(FontWeight.Bold)
          .onClick(() => {
            let context = getContext(this) as common.UIAbilityContext;
            context.startAbility({
              bundleName: "xx.xx.xx.xx",
              abilityName: 'xxx'
            })
          })
      }
      .width('100%')
    }
    .height('100%')
  }
}

bundleName传要跳转到的浏览器应用的包名就行了

更多关于HarmonyOS 鸿蒙Next如何跳转其他app的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)系统中,实现应用间的跳转通常依赖于系统的能力接口和特定的URI(统一资源标识符)协议。要跳转至其他应用,可以使用Intent机制,这是鸿蒙系统中用于组件间通信的重要机制。

具体步骤如下:

  1. 创建Intent对象:首先,你需要创建一个Intent对象,用于封装跳转的目标信息。

  2. 设置Action和URI:通过设置Intent的Action和URI来指定目标应用或页面。例如,如果目标应用定义了特定的URI scheme,你可以使用setPackage()setData()方法来设置目标。

  3. 启动Activity:使用startAbility()方法启动目标应用的Activity或Service。在鸿蒙系统中,Ability是应用的基本组件单元,类似于Android中的Activity或Service。

示例代码(伪代码):

Intent intent = new Intent();
intent.setPackage("com.example.targetapp"); // 目标应用的包名
// 或者使用URI,如果目标应用定义了特定的URI scheme
// intent.setData(Uri.parse("scheme://path"));
startAbility(intent);

注意:实际代码中应使用鸿蒙系统提供的API,上述代码仅为示意。

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

回到顶部