同福

解决在WebView里无法通过调用tel呼叫电话的问题

介绍

介绍

福哥在开发App程序时候,在WebView里通过“tel:138xxxxxxxx”调用呼叫电话的时候发现不起作用

经过研究发现了解决方法,分享给大家

教程

问题

直接在WebView的页面里调用“tel:138xxxxxxxx”无效

<a href="tel:138xxxxxxxx">呼叫138xxxxxxxx</a>

解决

在WebView重载拦截浏览器重定向,在里面对“tel:138xxxxxxxx”进行特殊处理

webView.setWebViewClient(new WebViewClient() {
    @Override
    public boolean shouldOverrideUrlLoading(WebView webView, String url) {
        if (url.startsWith("tel:")) {
            Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
            startActivity(intent);
            
            return true;
        }
        
        return false;
    }
});