1 个解决方案
#1
给WebView设置setWebClient,监听shouldOverrideUrlLoading方法,对url进行拦截。如果url是以"tel:”开头则在本地进行拨号处理。
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (getContext() == null) {
return false;
}
//调用拨号程序
if (url.startsWith("mailto:") || url.startsWith("geo:") || url.startsWith("tel:") || url.startsWith("smsto:")) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
getContext().startActivity(intent);
return true;
}
return false;
}
#1
给WebView设置setWebClient,监听shouldOverrideUrlLoading方法,对url进行拦截。如果url是以"tel:”开头则在本地进行拨号处理。
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (getContext() == null) {
return false;
}
//调用拨号程序
if (url.startsWith("mailto:") || url.startsWith("geo:") || url.startsWith("tel:") || url.startsWith("smsto:")) {
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
getContext().startActivity(intent);
return true;
}
return false;
}