WKWebViewJavascriptBridge 在iOS 11上的問題
阿新 • • 發佈:2019-02-03
iOS 10.3 或 iOS 11.0 WKWebView 可能會遇到 Completion handler passed to -[WKWebViewJavascriptBridge webView:decidePolicyForNavigationAction:decisionHandler:] was called more than once 這個問題導致崩潰,只要像這樣在 WKWebViewJavascriptBridge.m 檔案中新增一行程式碼即可 。
if ([_baseisWebViewJavascriptBridgeURL:url]) {
if ([_baseisBridgeLoadedURL:url]) {
[_baseinjectJavascriptFile];
} else if ([_base isQueueMessageURL:url]) {
[selfWKFlushMessageQueue];
} else {
[_baselogUnkownMessage:url];
}
decisionHandler(WKNavigationActionPolicyCancel);
return;//新增此句
}