using KVO to observe WKWebView's URL property not work in iOS 10

前端 未结 3 918
太阳男子
太阳男子 2021-01-06 02:52

I use WKWebView to load my webpage. When user click a button in webpage, my webpage will open a custom schema URL (e.g. asfle://download?media_id=1). And I use KVO to obser

3条回答
  •  天命终不由人
    2021-01-06 03:29

    I found the solution. Instead of using KVO, use delegate to detect opening URL.

    override func viewDidLoad() {
            super.viewDidLoad()
    
            webView.navigationDelegate = self
        }
    
    func webView(webView: WKWebView, decidePolicyForNavigationAction navigationAction: WKNavigationAction, decisionHandler: (WKNavigationActionPolicy) -> Void) {
        print("url:\(navigationAction.request.URL)")
        decisionHandler(.Allow)
        }
    

提交回复
热议问题