点击按钮, 用外部浏览器打开一个url HarmonyOS 鸿蒙Next
点击按钮, 用外部浏览器打开一个url HarmonyOS 鸿蒙Next 在应用内点击一个按钮, 然后跳转到外部浏览器打开一个url, 如何实现
参考下这个demo:
import { common, Want } from '@kit.AbilityKit';
import { BusinessError } from '@kit.BasicServicesKit';
@Entry
@Component
struct ClickDemo {
@State message: string = 'Hello World';
build() {
Column() {
Button('跳转浏览器')
.onClick(() => {
let context = getContext(this) as common.UIAbilityContext;
let wantInfo: Want = {
// uncomment line below if wish to implicitly query only in the specific bundle.
// bundleName: 'com.example.myapplication',
action: 'ohos.want.action.viewData',
// entities can be omitted.
entities: ['entity.system.browsable'],
uri: ''
}
context.startAbility(wantInfo).then(() => {
// ...
}).catch((err: BusinessError) => {
// ...
})
})
.width(200)
.height(200)
.type(ButtonType.Normal)
}.alignItems(HorizontalAlign.Start)
.height('100%')
.width('100%')
}
}
更多关于点击按钮, 用外部浏览器打开一个url HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
//打开浏览器 export function openBrowser(context: common.UIAbilityContext, urlPath: string) { let wantInfo: Want = { action: ‘ohos.want.action.viewData’, entities: [‘entity.system.browsable’], uri: urlPath } context.startAbility(wantInfo).then(() => {
}).catch(() => { showToast(“操作错误”) }) }
在HarmonyOS(鸿蒙Next)中,点击按钮并使用外部浏览器打开一个URL,可以通过Intent
和Uri
实现。以下是一个示例代码片段,展示如何在鸿蒙系统中实现这一功能:
import featureAbility from '@ohos.ability.featureAbility';
import wantConstant from '@ohos.ability.wantConstant';
// 定义按钮点击事件
function openUrlInBrowser() {
// 定义要打开的URL
const url = 'https://www.example.com';
// 创建Intent对象
let intent = {
action: wantConstant.Action.VIEW_ACTION,
uri: url,
flags: wantConstant.Flags.FLAG_ABILITY_NEW_MISSION
};
// 启动外部浏览器
featureAbility.startAbility(intent)
.then(() => {
console.log('URL opened in external browser');
})
.catch((error) => {
console.error('Failed to open URL:', error);
});
}
在这个示例中,Intent
对象用于指定要执行的操作(ACTION_VIEW
)以及要打开的URL。startAbility
方法用于启动外部浏览器应用并打开指定的URL。如果操作成功,控制台会输出“URL opened in external browser”;如果失败,会输出错误信息。