public static WebViewClient getWebViewClient(Activity activity, BridgeWebView awebview) {
return new WebViewClient() {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url == null) {
return false;
}

try {
if (url.startsWith("weixin://") //微信
|| url.startsWith("alipays://") //支付宝
|| url.startsWith("mailto://") //邮件
|| url.startsWith("tel://")//电话
|| url.startsWith("tel:")//电话
|| url.startsWith("dianping://")//大众点评
//其他自定义的scheme
) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
activity.startActivity(intent);
return true;
}
} catch (Exception e) { //防止crash (如果手机上没有安装处理某个scheme开头的url的APP, 会导致crash)
return true;//没有安装该app时,返回true,表示拦截自定义链接,但不跳转,避免弹出上面的错误页面
}

//处理http和https开头的url
awebview.loadUrl(url);
return true;
}
};
}
WebViewClient webViewClient= WebViewUtils.getWebViewClient(this,webview);
webview.setWebViewClient(webViewClient);