iOS内嵌WKWebView拨打电话、发短信、发邮件没反应
2018-01-25 17:07
1301 查看
iOS内嵌WKWebView拨打电话没反应
内嵌H5的发送短信,打电话,发送邮件代码的处理
实现webview的代理方法
swift3.0 代码:
OC代码:
发送短信、邮件和打电话方式一样
<a href="tel:13112345678">拨打号码</a>
内嵌H5的发送短信,打电话,发送邮件代码的处理
实现webview的代理方法
swift3.0 代码:
// 处理拨打电话、发短信、发邮件以及Url跳转等等 func webView(_ webView: WKWebView, decidePolicyFor navigationAction: WKNavigationAction, decisionHandler: @escaping (WKNavigationActionPolicy) -> Swift.Void) { if navigationAction.request.url?.scheme == "tel" { // DispatchQueue.main.async { UIApplication.shared.openURL(navigationAction.request.url!); decisionHandler(WKNavigationActionPolicy.cancel) // } } else if navigationAction.request.url?.scheme == "sms"{ //短信的处理 UIApplication.shared.openURL(navigationAction.request.url!); decisionHandler(WKNavigationActionPolicy.cancel) } else if navigationAction.request.url?.scheme == "mailto"{ //邮件的处理 UIApplication.shared.openURL(navigationAction.request.url!); decisionHandler(WKNavigationActionPolicy.cancel) } else{ decisionHandler(WKNavigationActionPolicy.allow) } }
OC代码:
// 处理拨打电话以及Url跳转等等 - (void)webView:(WKWebView *)webView decidePolicyForNavigationAction:(WKNavigationAction *)navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler { NSURL *URL = navigationAction.request.URL; NSString *scheme = [URL scheme]; if ([scheme isEqualToString:@"tel"]) { NSString *resourceSpecifier = [URL resourceSpecifier]; NSString *callPhone = [NSString stringWithFormat:@"telprompt://%@", resourceSpecifier]; /// 防止iOS 10及其之后,拨打电话系统弹出框延迟出现 dispatch_async(dispatch_get_global_queue(0, 0), ^{ [[UIApplication sharedApplication] openURL:[NSURL URLWithString:callPhone]]; }); } else { decisionHandler(WKNavigationActionPolicyAllow); } }
发送短信、邮件和打电话方式一样
相关文章推荐
- 五 :ios学习笔记 拨打电话 发短信 发邮件
- iOS 拨打电话三种方式 和 发短信的两种方法
- iOS 使用WKWebView加载h5页面无法调用拨打电话功能
- html5 页面拨打电话,发短信,发邮件
- iOS开发 解决WKWebView加载的h5,无法调用拨打电话功能
- a标签拨打电话、发短信、发邮件
- iOS 拨打电话,发短信
- iOS开发 解决WKWebView加载的h5,无法调用拨打电话功能
- iOS 拨打电话三种方式总结
- iOS 拨打电话的两种方式
- iOS监听拨打电话回调函数
- 转 iOS程序中调用系统自带应用(短信,邮件,浏览器,地图,appstore,拨打电话)
- html5页面中拨打电话和发短信方式
- iOS开发:发短信、发邮件、打电话及摇一摇实现
- iOS 中获得本机号,拨打电话,发送短信
- iOS 代码拨打电话的三种方式
- IOS拨打电话功能的实现
- iOS两种调用拨打电话方式(亲测)
- iOS中摇一摇 发短信 打电话 发邮件