相关问题
#鸿蒙通关秘籍#如何在鸿蒙应用中使用Deep Linking实现应用间跳转?
45浏览 • 1回复 待解决
#鸿蒙通关秘籍#应用链接和Deep Linking有啥不同的地方?
80浏览 • 1回复 待解决
#鸿蒙通关秘籍#App Linking的跳转效果和Deep Linking有啥不同?
68浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking在跳转时,为啥会拉起应用选择框?
88浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking和App Linking在用户体验上有啥区别?
128浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何获取通过链接跳转的结果?
58浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙中如何实现应用间链接跳转?
31浏览 • 1回复 待解决
#鸿蒙通关秘籍#为啥Deep Linking不推荐直接拉起目标应用?
68浏览 • 1回复 待解决
#鸿蒙通关秘籍#我在琢磨,用Deep Linking的时候,怎么避免跳转出错,不闹心呢?
88浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking在没有匹配应用时,系统会怎么做?
68浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中处理App Linking传入的链接?
56浏览 • 1回复 待解决
#鸿蒙通关秘籍#在配置Deep Linking时,需要注意哪些URI匹配规则?
118浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking在匹配多个应用时,系统会怎么做?
74浏览 • 1回复 待解决
#鸿蒙通关秘籍#如果应用没有注册URL,还能通过AppLink链接跳转吗?
115浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中通过router跳转并传递复杂对象?
79浏览 • 0回复 待解决
Web拦截不到vue的router跳转
1536浏览 • 0回复 待解决
#鸿蒙通关秘籍#如何在Navigation中实现路由拦截并增加自定义逻辑?
65浏览 • 1回复 待解决
#鸿蒙通关秘籍#使用App Linking时,如何确保跳转到正确的应用?
91浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中使用Web组件拍照并显示图片?
77浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙中配置应用以支持链接跳转?
64浏览 • 1回复 待解决
#鸿蒙通关秘籍# 在HarmonyOS NEXT中如何实现Navigation路由拦截,并确保首次点进案例时拦截不失效?
29浏览 • 0回复 待解决
#鸿蒙通关秘籍#如何通过openLink接口实现App之间的跳转?
47浏览 • 1回复 待解决
#鸿蒙通关秘籍#我想问问,用Deep Linking的时候,怎么让它跳得安全,不中招呢?
108浏览 • 1回复 待解决
HarmonyOS web组件怎么拦截请求
537浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙中能否对页面跳转进行拦截?
42浏览 • 1回复 待解决
使用鸿蒙的Web组件时,通过在
onLoadIntercept
回调中检测及拦截Deep Linking链接,来实现应用跳转。代码如下:typescript // index.ets import { webview } from '@kit.ArkWeb'; import { BusinessError } from '@kit.BasicServicesKit'; import { common } from '@kit.AbilityKit';
@Entry @Component struct WebComponent { controller: webview.WebviewController = new webview.WebviewController();
build() { Column() { Web({ src: $rawfile('index.html'), controller: this.controller }) .onLoadIntercept((event) => { const url: string = event.data.getRequestUrl(); if (url === 'link://www.example.com') { (getContext() as common.UIAbilityContext).openLink(url) .then(() => { console.log('openLink success'); }).catch((err: BusinessError) => { console.error('openLink failed, err:' + JSON.stringify(err)); }); return true; } return false; }) } } }
前端页面代码:
html <!-- index.html --> <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> </head> <body> <h1>Hello World</h1> <button class="doOpenLink" onclick="doOpenLink()">跳转其他应用一</button> <a href="link://www.example.com">跳转其他应用二</a> </body> </html> <script> function doOpenLink() { window.open("link://www.example.com") } </script>
通过这种方式可以实现Web页面内跳转至其他应用。