有没有办法抓到"Received an unexpected URL from the web process:"
is there no way to catch "Received an unexpected URL from the web process:"
我正在尝试使用 UIWebView 和 Swift 使用 WKWebView 重写 objective-c 应用程序。
该应用程序显示大量本地内容。
虽然我可以毫无问题地在 WKWebView 中显示初始网页。当我单击指向更多本地内容的 link 时,出现以下错误:
收到来自网络进程的意外 URL:“...”
该内容使用非标准 href 来标识本地内容。使用 UIWebView shouldStartLoadWithRequest api 我能够拦截这个点击的 linked 并以我可以加载适当的本地内容的方式重写 href。
到目前为止,我无法在 WKWebView 中找到任何可以让我完成同样事情的东西。
我正在使用这些内容,而不是创建它,所以我无法选择更改 href 的格式。
我试过:
decidePolicyFor navigationResponse
decidePolicyFornavigationAction
导航失败
didFailProvisionalNavigation 导航
didStartProvisionalNavigation 导航
我尝试添加自定义 URLSchemeHandler...
什么都不允许我拦截 link.
但在控制台中我收到错误:
收到来自网络进程的意外URL:
从 Web 进程收到无效消息 "WebPageProxy.DecidePolicyForNavigationAction"。
无法发出服务信号com.apple.WebKit.WebContent:113:找不到指定的服务
它确实得到 decideActionPolicyFor:
我错过了什么吗?
任何帮助将不胜感激!
摩根·琼斯
WKURLSchemeHandler 是用于 WKWebView 的方法。
但是我们发现代码如下:
"script type="text/javascript" src="xxx-local:.js"
当通过 https 访问页面时无法识别我们的自定义方案。
样式表也一样。
不过仍然适用于图像。
你的 link 长什么样?
P.S。您无法拦截已知方案(例如 http)
是的,有办法,使用这个功能
func webViewWebContentProcessDidTerminate(WKWebView){}
捕获错误,您可以返回或重新加载网络视图。
我正在尝试使用 UIWebView 和 Swift 使用 WKWebView 重写 objective-c 应用程序。 该应用程序显示大量本地内容。 虽然我可以毫无问题地在 WKWebView 中显示初始网页。当我单击指向更多本地内容的 link 时,出现以下错误:
收到来自网络进程的意外 URL:“...”
该内容使用非标准 href 来标识本地内容。使用 UIWebView shouldStartLoadWithRequest api 我能够拦截这个点击的 linked 并以我可以加载适当的本地内容的方式重写 href。
到目前为止,我无法在 WKWebView 中找到任何可以让我完成同样事情的东西。 我正在使用这些内容,而不是创建它,所以我无法选择更改 href 的格式。
我试过:
decidePolicyFor navigationResponse decidePolicyFornavigationAction 导航失败 didFailProvisionalNavigation 导航 didStartProvisionalNavigation 导航
我尝试添加自定义 URLSchemeHandler... 什么都不允许我拦截 link.
但在控制台中我收到错误:
收到来自网络进程的意外URL: 从 Web 进程收到无效消息 "WebPageProxy.DecidePolicyForNavigationAction"。 无法发出服务信号com.apple.WebKit.WebContent:113:找不到指定的服务
它确实得到 decideActionPolicyFor:
我错过了什么吗? 任何帮助将不胜感激!
摩根·琼斯
WKURLSchemeHandler 是用于 WKWebView 的方法。
但是我们发现代码如下:
"script type="text/javascript" src="xxx-local:.js"
当通过 https 访问页面时无法识别我们的自定义方案。
样式表也一样。 不过仍然适用于图像。
你的 link 长什么样?
P.S。您无法拦截已知方案(例如 http)
是的,有办法,使用这个功能
func webViewWebContentProcessDidTerminate(WKWebView){}
捕获错误,您可以返回或重新加载网络视图。