Android H5 集成开发那点事(持续更新)
2016-04-13 15:05
459 查看
Android H5 集成开发 ,兼容
WebView兼容H5页面拨打电话,调用邮件等实现方式
JS调用Android开发者实现的调起电话或者邮箱等方法.WebViewClient的shouldOverrideUrlLoading方法中去处理相关的判断
H5直接通过JS, 利用Intent调起系统提供的手机电话或者邮箱
一. 利用JS,让Android开发者实现调起拨打电话或者是邮箱等方法调用,提供给H5调用(JsBridge:https://github.com/lzyzsd/JsBridge)
webView.registerHandler("action", new BridgeHandler() { @Override public void handler(String data, CallBackFunction function) { if (data != null&&data .startsWith("tel:")){//支持拨打电话 Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); } function.onCallBack("YES"); } });
二. WebViewClient的shouldOverrideUrlLoading方法中去处理相关的判断
mWbView.setWebViewClient(new WebViewClient() { @Override public boolean shouldOverrideUrlLoading(WebView view, String url) {//此处能拦截超链接的url,即拦截href请求的内容. if (url.startsWith("tel:")){//支持拨打电话 Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); startActivity(intent); return true; }else if (url.startsWith("mailto:")) {//支持发送邮箱 MailTo mt = MailTo.parse(url); Intent i = newEmailIntent(mt.getTo(), mt.getSubject(), mt.getBody(), mt.getCc()); startActivity(i); view.reload(); return true; } view.loadUrl(url); return true; } });
三. H5直接通过JS, 利用Intent调起系统提供的手机电话或者邮箱
var Uri = plus.android.importClass("android.net.Uri"); var Intent = plus.android.importClass("android.content.Intent"); var number = new Uri.parse("tel:4001109999"); var callIntent = new Intent(Intent.ACTION_CALL, number);//这步是关键,ACTION_CALL而不是ACTION_DIAL plus.android.runtimeMainActivity().startActivity(callIntent);
相关文章推荐
- 安卓开发培训(3.2 使用SharedPreferences实现Android数据读写操作)
- Android SlidingMenu 使用详解
- Android常用的工具资料
- Android常用设计模式
- android之图片压缩
- android 电容屏(二):驱动调试之基本概念篇
- android 电容屏(二):驱动调试之基本概念篇
- Android ListView不响应OnItemClickListener解决办法
- android:string文件中的空格 
- Android 资源分类详解
- Android service 中的stub类
- Android开发错误汇总
- Android应用借助LinearLayout实现垂直水平居中布局
- Android - 文件读写操作总结
- android root手机 wifi 调试
- Android Gradle基础实践
- Android中WebView与JS交互
- Android RadioButton selector背景
- android 电容屏(一):电容屏基本原理篇
- android 电容屏(一):电容屏基本原理篇