HarmonyOS鸿蒙Next中应用点击跳转浏览器访问指定地址

HarmonyOS鸿蒙Next中应用点击跳转浏览器访问指定地址

4 回复

更多关于HarmonyOS鸿蒙Next中应用点击跳转浏览器访问指定地址的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


let want: Want = {
  action: 'ohos.want.action.viewData',
  entities: ['entity.system.browsable'],
  uri: 'https://www.huawei.com'
};

在HarmonyOS鸿蒙Next中,应用点击跳转浏览器访问指定地址可以通过Intent实现。使用ohos.agp.components.ComponentstartAbility方法,设置IntentActionACTION_VIEW,并将Uri设置为目标网址。示例代码如下:

import featureAbility from '@ohos.ability.featureAbility';
import wantConstant from '@ohos.ability.wantConstant';

let want = {
    action: wantConstant.Action.ACTION_VIEW,
    uri: 'https://www.example.com'
};
featureAbility.startAbility(want);

此代码会启动系统默认浏览器并打开指定网址。

在HarmonyOS Next中实现应用跳转浏览器访问指定URL,可以通过以下方式实现:

  1. 使用系统能力@ohos.web.webview
import webview from '@ohos.web.webview';

let webView = webview.WebviewController.create();
webView.loadUrl("https://example.com");
  1. 使用隐式Want跳转:
import common from '@ohos.app.ability.common';

let context = getContext(this) as common.UIAbilityContext;
let want = {
  action: "ohos.want.action.viewData",
  uri: "https://example.com"
};
context.startAbility(want).catch(err => {
  console.error(`Failed to start ability. Code: ${err.code}, message: ${err.message}`);
});
  1. 使用显式Want跳转(需提前查询设备上安装的浏览器):
import featureAbility from '@ohos.ability.featureAbility';

let want = {
  bundleName: "com.example.browser",
  abilityName: "MainAbility",
  parameters: {
    url: "https://example.com"
  }
};
featureAbility.startAbility(want);

注意:需要先在module.json5中声明网络权限:

"requestPermissions": [
  {
    "name": "ohos.permission.INTERNET"
  }
]

以上方法都能实现从应用内跳转浏览器打开指定URL,开发者可根据具体场景选择最适合的方式。

回到顶部