suchen

Heim  >  Fragen und Antworten  >  Hauptteil

ios - WKWebview 点击电话 href=“tel:xxx”没有效果是为什么?

WKWebview 点击电话 href=“tel:xxx”没有效果是为什么?

大家讲道理大家讲道理2771 Tage vor1691

Antworte allen(7)Ich werde antworten

  • 高洛峰

    高洛峰2017-04-17 18:01:54

    在点击打电话这个按钮的时候需要在这个
    -(void)webView:(WKWebView )webView decidePolicyForNavigationAction:(WKNavigationAction )navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler
    代理方法中返回decisionHandler(WKNavigationActionPolicyAllow);
    然后在代理方法中- (void)webView:(WKWebView )webView didStartProvisionalNavigation:(WKNavigation )navigation
    判断[webView.URL absoluteString]

    贴上代码:

    //如果不实现这个代理方法,默认会屏蔽掉打电话等url
    -(void)webView:(WKWebView )webView decidePolicyForNavigationAction:(WKNavigationAction )navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler {

    decisionHandler(WKNavigationActionPolicyAllow);

    }

    • (void)webView:(WKWebView )webView didStartProvisionalNavigation:(WKNavigation )navigation
      {

      NSString *path=[YKBDateHelper convertNull:[webView.URL absoluteString]];
      NSString * newPath = [path lowercaseString];

      if ([newPath hasPrefix:@"sms:"] || [newPath hasPrefix:@"tel:"]) {

      UIApplication * app = [UIApplication sharedApplication];
      if ([app canOpenURL:[NSURL URLWithString:newPath]]) {
          [app openURL:[NSURL URLWithString:newPath]];
      }
      return;

      }
      }

    Antwort
    0
  • 天蓬老师

    天蓬老师2017-04-17 18:01:54

    tel://xxx?

    Antwort
    0
  • ringa_lee

    ringa_lee2017-04-17 18:01:54

    请问,这个问题解决了吗,我也遇到了同样的问题

    Antwort
    0
  • PHPz

    PHPz2017-04-17 18:01:54

    是因为用的中文冒号吧?
    类似于 <a href="tel:xxx">xxx</a>,是不会有问题的。

    Antwort
    0
  • 黄舟

    黄舟2017-04-17 18:01:54

    试试看看这个

    <a href="tel: + 1 + 电话号码>电话号码</a>

    Antwort
    0
  • 大家讲道理

    大家讲道理2017-04-17 18:01:54

    冒号:用了中文:)

    Antwort
    0
  • PHPz

    PHPz2017-04-17 18:01:54

    -(void)webView:(WKWebView )webView decidePolicyForNavigationAction:(WKNavigationAction )navigationAction decisionHandler:(void (^)(WKNavigationActionPolicy))decisionHandler

    这个方法中 打印一下navigationAction.navigationType 这个的值 如果是0的话要特殊处理

    Antwort
    0
  • StornierenAntwort