2

我正在我的应用程序中实现 Web 视图。现在,当用户单击电话号码时,它会显示net::ERR_UNKNOWN_URL_SCHEME。但如果我使用铬。它带来了带有该电话号码的拨号器应用程序。

我的应用程序中需要完全相同的东西。在 webview 中单击电话号码时,需要使用该电话号码打开拨号器。

这是我shouldOverrideUrlLoading的 webview 方法。我可以看到这里有答案但我对 android 和 java 还很陌生,直到现在我还不能让这个东西工作。

 public boolean shouldOverrideUrlLoading(WebView view, String url){
        progressBar.setVisibility(view.VISIBLE);
        view.loadUrl(url);
        return true;
   }
4

1 回答 1

4

这必须有效。我们需要重写shouldOverrideUrlLoadingwebview 类的方法。并检查 url 是否包含tel:xxxx然后为拨号程序创建一个意图并调用拨号程序。mailto:如果它是一个链接,我们可以调用任何我们想要的应用程序,比如 gmail 应用程序

这是方法。

@Override
public boolean shouldOverrideUrlLoading(WebView view, String url)
{
   if(url.contains("tel:")) {
        Intent intent = new Intent(Intent.ACTION_DIAL);
        intent.setData(Uri.parse(url));
        startActivity(intent);
        return true;
   } else {
        progressBar.setVisibility(view.VISIBLE);
        view.loadUrl(url);
        return true;
   }
}
于 2016-08-14T07:41:26.600 回答