相关问题
#鸿蒙通关秘籍#如何在鸿蒙应用中使用Deep Linking实现应用间跳转?
321浏览 • 1回复 待解决
#鸿蒙通关秘籍#App Linking的跳转效果和Deep Linking有啥不同?
204浏览 • 1回复 待解决
#鸿蒙通关秘籍#应用链接和Deep Linking有啥不同的地方?
193浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking和App Linking在用户体验上有啥区别?
234浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking在跳转时,为啥会拉起应用选择框?
207浏览 • 1回复 待解决
HarmonyOS 通过Deep Linking打开app后,app内如何接收这个Deep Linking的url?
14浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何获取通过链接跳转的结果?
222浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙中如何实现应用间链接跳转?
287浏览 • 1回复 待解决
#鸿蒙通关秘籍#为啥Deep Linking不推荐直接拉起目标应用?
189浏览 • 1回复 待解决
#鸿蒙通关秘籍#在配置Deep Linking时,如何避免匹配到多个应用?
183浏览 • 1回复 待解决
#鸿蒙通关秘籍#我在琢磨,用Deep Linking的时候,怎么避免跳转出错,不闹心呢?
169浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking在没有匹配应用时,系统会怎么做?
183浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在HarmonyOS中处理App Linking传入的链接?
185浏览 • 1回复 待解决
HarmonyOS 通过Deep Linking唤起app,启动后app如何获取uri
93浏览 • 1回复 待解决
#鸿蒙通关秘籍#在配置Deep Linking时,需要注意哪些URI匹配规则?
237浏览 • 1回复 待解决
#鸿蒙通关秘籍#Deep Linking在匹配多个应用时,系统会怎么做?
208浏览 • 1回复 待解决
#鸿蒙通关秘籍#如果应用没有注册URL,还能通过AppLink链接跳转吗?
255浏览 • 1回复 待解决
HarmonyOS web组件拦截每一次跳转
160浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何使用鸿蒙Web组件本地资源跨域拦截器?
202浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何在HarmonyOS NEXT中通过router跳转并传递复杂对象?
214浏览 • 0回复 待解决
#鸿蒙通关秘籍#如何实现从Web页面跳转到系统应用?
281浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现Web页面跳转到应用内部页面?
212浏览 • 1回复 待解决
HarmonyOS web组件监听以及拦截跳转,js交互
289浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在Navigation中实现路由拦截并增加自定义逻辑?
201浏览 • 1回复 待解决
HarmonyOS Web组件,怎么拦截url并加载本地文件
248浏览 • 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页面内跳转至其他应用。