单击广告时,WKWebView 没有响应。控制台消息:[辅助功能] WKContentView

Posted

技术标签:

【中文标题】单击广告时,WKWebView 没有响应。控制台消息:[辅助功能] WKContentView【英文标题】:WKWebView not responds when clicking an Ad. Console msg : [Accessibility] WKContentView 【发布时间】:2018-11-20 08:34:48 【问题描述】:

我正在使用WKWebView,并且我设置了WKNavigationDelegate 方法,一切看起来都很好。 delegate 方法按应有的方式响应,但不是 100% 如我所愿。

有一些特定的ads 不可点击。

not Clickable我的意思是

`func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Void)`

没有着火。

并且有一个 url 的观察者至少可以看到是什么类型或URL 这仍然没有从那里得到结果。

mainWebView.addObserver(self, forKeyPath: #keyPath(WKWebView.url), options: .new, context: nil)

override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) 
        if keyPath == "estimatedProgress"
            progressBar.progress = Float(mainWebView.estimatedProgress)
            print(Float(mainWebView.estimatedProgress))
        
        if keyPath == #keyPath(WKWebView.url)
            print(mainWebView.url?.absoluteString)
        

    

我唯一得到的是来自控制台的

[Accessibility] WKContentView[@] set up: @ pid: @ MACH_PORT

任何想法.....或有类似问题的人?

谢谢

【问题讨论】:

【参考方案1】:

你应该像下面这样注册一个处理程序:

[configuration.userContentController addScriptMessageHandler:self name:@"yourhandlerName"];

【讨论】:

以上是关于单击广告时,WKWebView 没有响应。控制台消息:[辅助功能] WKContentView的主要内容,如果未能解决你的问题,请参考以下文章

WKWebView 点击广告不会触发委托方法

Cordova ios WKWebView第一个touchstart事件在键盘启动时没有触发

IOS - 第二次单击相同按钮时,WKWebview 在决定策略中获取空 url

锁定用户与WKWebView的交互

SWIFT TableView 没有响应

如何使用缓存使用 SfSafariView 或 WKWebView 更快地加载网站?