[英]How to open WhatsApp from WKWebView?
我有一个 iOS 应用程序,其中包含一个 WebView,该 WebView 有一个可以打开 WhatsApp 的按钮。 按钮不起作用。 我应该怎么做才能让 WebView 打开 WhatsApp? 如果我在浏览器中打开网站,它会打开 WhatsApp。
这是我在研究后找到的解决方案:
func webView(_ webView: WKWebView,
decidePolicyFor navigationAction: WKNavigationAction,
decisionHandler: @escaping (WKNavigationActionPolicy) -> Void)
{
if let requestURL = navigationAction.request.url?.absoluteString,
!requestURL.contains("https") && !requestURL.contains("http") {
if requestURL == "whatsapp://send",
let urlString = requestURL.addingPercentEncoding(withAllowedCharacters: NSCharacterSet.urlQueryAllowed) {
if let whatsappURL = NSURL(string: urlString) {
if UIApplication.shared.canOpenURL(whatsappURL as URL) {
UIApplication.shared.open(whatsappURL as URL, options: [:], completionHandler: { (Bool) in
})
} else {
// Handle a problem
}
}
}
decisionHandler(.cancel)
} else {
decisionHandler(.allow)
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.