关于在webview中直接调起系统的打电话功能
来源:互联网 发布:java实现二分法查找 编辑:程序博客网 时间:2024/05/29 17:25
//设置WebView属性,能够执行Javascript脚本WebSettings settings = webView.getSettings();//获得WebView的设置ssettings.setDomStorageEnabled(true);settings.setAppCacheMaxSize(1024 * 1024 * 8);String appCachePath = getApplicationContext().getCacheDir().getAbsolutePath();settings.setAppCachePath(appCachePath);settings.setAllowFileAccess(true);settings.setAppCacheEnabled(true);settings.setUseWideViewPort(true);settings.setLoadWithOverviewMode(true);//适配settings.setJavaScriptEnabled(true); //支持jssettings.setDefaultZoom(WebSettings.ZoomDensity.FAR);// 屏幕自适应网页,如果没有这个,在低分辨率的手机上显示可能会异常webView.setWebChromeClient(new MyWebChromeClient());
注意:里面重写的两个shouldOverrideUrlLoading()方法是针对不同的版本。
webView.setWebViewClient(new WebViewClient() {@Override
public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
LogUtil.log(TAG, "打电话的1连接href_url=" + request.getUrl());
String tag = "tel:";
if (request.getUrl() != null && request.getUrl().toString().contains(tag)) {
String mobile = request.getUrl().toString().substring(request.getUrl().toString().lastIndexOf(":") + 1);
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:" + mobile));
startActivity(intent);
return true;
}
}
//返回false,意味着请求过程里,不管有多少次的跳转请求(即新的请求地址),均交给webView自己处理,这也是此方法的默认处理
//返回true,说明你自己想根据url,做新的跳转,比如在判断url符合条件的情况下,我想让webView加载http://ask.csdn.net/questions/178242
return true;
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String href_url) {
LogUtil.log(TAG, "打电话的连接href_url=" + href_url);
//点击的打电话的超链接
String tag = "tel:";
if (href_url.contains(tag)) {
String mobile = href_url.substring(href_url.lastIndexOf(":") + 1);
Intent intent = new Intent(Intent.ACTION_DIAL, Uri.parse("tel:" + mobile));
startActivity(intent);
return true;
}
return super.shouldOverrideUrlLoading(view, url);
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
});
阅读全文
0 0
- 关于在webview中直接调起系统的打电话功能
- 在Fragment中点击一个TextView直接调起手机的打电话页面
- 关于直接在View中实现Gesture的功能
- ListView显示数据,弹出AlertDialog,调起打电话功能
- iOS调起打电话
- iphone开发中调用系统打电话功能
- 关于微信中直接调起 Native App 的调研报告
- android webview自定义标签!(实现打电话的功能);
- iOS 调用系统的打电话功能
- mac的终端中直接调起sublime
- 在WebView的页面中直接使用res中的图片
- iphone中调用系统打电话功能并且结束电话后返回自己的应用
- 在webview中直接显示html
- 怎么在程序中使用代码调用iphone打电话功能
- android调用系统打电话功能
- 系统打电话,发短信功能
- 打电话功能的实现
- 打电话功能的实现
- Eclipse、object
- 广度优先搜索总结
- ubuntu设置静态IP
- cmd输入命令报错“不是内部或外部命令,也不是可运行的程序或批处理文件”
- 工厂设计模式(三)--抽象工厂模式
- 关于在webview中直接调起系统的打电话功能
- lambda和filter的神奇
- 函数节流 + 函数防抖
- Android 自定义View之Canvas详解
- 5-3 使用函数计算两点间的距离
- TCP/IP协议族分层概要
- TASKCTL小属性大应用(继承的应用)
- 装饰器练习
- 二维码(简单基础)