从 Windows Store App 中的 WebView 捕获到自定义协议的导航

Posted

技术标签:

【中文标题】从 Windows Store App 中的 WebView 捕获到自定义协议的导航【英文标题】:Capture navigation to a custom protocol from WebView in Windows Store App 【发布时间】:2014-07-08 15:48:02 【问题描述】:

有没有办法在 Windows 应用商店 (8.1) 应用程序的任何 Webview 导航事件中捕获对带有 href 的超链接的点击(例如:myapp://xyz)?我知道这可以在 html 中使用 window.external.notify 来实现。 wp7中缺少此功能,后来在wp8中添加 这在 Windows 8.1 应用程序中是不允许的还是我在这里遗漏了什么?

【问题讨论】:

【参考方案1】:

在 Windows 10 中,您可以在 WebView 上使用“UnsupportedUriSchemeIdentified”事件。确保将事件 args Handled 设置为 true,这样 Windows 对话框就不会弹出。

【讨论】:

【参考方案2】:

通过 windows phone 8 中的 WebView,我认为它是一个 WebBrowser 控件。 显然,我找不到直接的方法来获得超链接点击。因为不是由用户交互发起的所有内部 rdirects、超链接和类似导航都具有与链接单击相同的模式。所以没有明显的直接方法来隔离它们。 (当然,除非您处理一些 ui 事件,例如点击浏览器等。我认为这不是明智的做法。)

【讨论】:

感谢@Gaurav Deochakke 的回复。是的,我指的是Windows Phone 8 中的WebBrowser 控件。似乎是Windows 8.1 的webview 控件中的一个严重缺陷。希望 MS 会进行一些更新,其中包括该功能。你知道有什么更新吗? 这是一个 msdn 页面,讨论 8.1 中的 Web 视图控制。希望它有所帮助:msdn.microsoft.com/en-us/library/windows/apps/… 好吧,从其中可用的直接事件来看,似乎不可能捕获点击 html 链接的事件。但是除非我们真正开始研究它并尝试找出任何间接方法来捕获事件,否则什么也不能说。希望我的回答和评论中的这个链接能带你走向正确的方向。如果有帮助,请接受答案或投票:) 干杯。

以上是关于从 Windows Store App 中的 WebView 捕获到自定义协议的导航的主要内容,如果未能解决你的问题,请参考以下文章

Windows Store App中的定时后台任务?

如何在 Windows Store App 中使用 SearchBox 搜索内容?

使用 c# 在 Windows Store App 中裁剪和保存图像(UIElement)

IOS上传工具实现在windows下发布ios app到App Store

#APP:[随身单字卡]于Windows Phone Store上架

Expo iOS Build 无法正常工作--“无法从 App Store Connect 接收最新的 API 密钥”