HarmonyOS鸿蒙Next中应用点击跳转浏览器访问指定地址
HarmonyOS鸿蒙Next中应用点击跳转浏览器访问指定地址
4 回复
使用隐式Want打开网址
参考文档
https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/explicit-implicit-want-mappings-V5
更多关于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.Component
的startAbility
方法,设置Intent
的Action
为ACTION_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,可以通过以下方式实现:
- 使用系统能力
@ohos.web.webview
:
import webview from '@ohos.web.webview';
let webView = webview.WebviewController.create();
webView.loadUrl("https://example.com");
- 使用隐式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}`);
});
- 使用显式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,开发者可根据具体场景选择最适合的方式。