鸿蒙Next ArkTS如何跳转打开浏览器

在鸿蒙Next开发中,使用ArkTS语言如何实现跳转并打开系统默认浏览器?具体需要调用哪个API或模块?能否提供示例代码说明实现步骤?

2 回复

哈哈,程序员老哥,鸿蒙Next的ArkTS里想跳转浏览器?简单!用openUrl就行:

import webView from '@ohos.web.webView';

webView.openUrl('https://www.example.com');

记得在module.json5里配好网络权限哦!代码一跑,浏览器就蹦出来了~

更多关于鸿蒙Next ArkTS如何跳转打开浏览器的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在鸿蒙Next的ArkTS中,可以通过WebviewController或系统能力want来跳转打开浏览器。以下是两种方法的示例:

方法1:使用WebviewController(应用内打开)

import webview from '@ohos.web.webview';
import { BusinessError } from '@ohos.base';

@Entry
@Component
struct Index {
  controller: webview.WebviewController = new webview.WebviewController();

  build() {
    Column() {
      // 创建Web组件显示网页
      Web({
        src: 'https://www.example.com',
        controller: this.controller
      })
    }
  }
}

方法2:使用want跳转系统浏览器

import { common } from '@kit.AbilityKit';
import { hilog } from '@kit.PerformanceAnalysisKit';

@Entry
@Component
struct Index {
  build() {
    Column() {
      Button('打开浏览器')
        .onClick(() => {
          let want: common.Want = {
            uri: 'https://www.example.com',  // 目标网址
            action: 'ohos.want.action.viewData'
          };
          let context = getContext(this) as common.UIAbilityContext;
          
          context.startAbility(want)
            .then(() => {
              hilog.info(0x0000, 'TestTag', 'Succeeded in starting ability.');
            })
            .catch((err: BusinessError) => {
              hilog.error(0x0000, 'TestTag', `Failed to start ability. Code: ${err.code}, message: ${err.message}`);
            });
        })
    }
  }
}

注意事项:

  1. 方法1在应用内嵌浏览器页面,方法2调用系统默认浏览器
  2. 使用方法2需要配置权限:在module.json5中添加:
{
  "module": {
    "requestPermissions": [
      {
        "name": "ohos.permission.INTERNET"
      }
    ]
  }
}

推荐使用方法2跳转系统浏览器,体验更统一。

回到顶部