安卓通过js与网页的H5页面进行交换
2017-06-16 17:46
323 查看
常见遇到的需求是,从网页端调起本地的分享或者支付等……
思路是APP端与H5页面协定好一个方式,来调用APP里面的方法。
H5本地交换的js安卓需要写的代码:
/**AndroidJavaScript * 本地与h5页面交互的js类,这里写成内部类了 * returnAndroid方法上@JavascriptInterface一定不能漏了 */ private class AndroidJavaScript { Context mContxt; public AndroidJavaScript (Context mContxt) { this.mContxt = mContxt; } @JavascriptInterface public void returnAndroid(String name) {//从网页跳回到APP if (name.isEmpty()||name.equals("")){ return ; } //这里写你的操作/////////////////////// Intent intent = new Intent(WebActivity.this, MainActivity.class); intent.putExtra("name",name); startActivity(intent); } }
给目标webview设置,
mWebView.addJavascriptInterface(new AndroidJavaScript(getApplication()), "android");
H5写法:
<a href='JavaScript:android.returnAndroid("要返回给APP的数据")'>点击我跳回APP</a>
注意:
小心,就是字母大小写问题,传参数也要对才行,写错就调用不起来了(android、returnAndroid())returnAndroid方法上@JavascriptInterface一定不能漏了。
所有要被H5调用的方法都要加上@JavascriptInterface,安卓4.2后就要添加上这个就能用js
相关推荐
安卓HTML中打开一个连接!点击跳转了,可以实现返回上一级的HTML的页面
TextView显示html信息、在文本下面添加下划线、设置图片
loadDataWithBaseURL加载HTML数据
相关文章推荐
- android网页打印,安卓网页打印,h5页面打印,浏览器打印,js打印工具
- 关于 第三方接口支付的时候 采用post提交的方式,有两种 一种是通过 curl来进行,一种是通过js当页面加载完后跳转
- 两个页面之间通过js进行传值
- 如何通过JS,在html网页上进行添加元素,包括div 以及下拉框等
- 通过JS页面唤醒app(安卓+ios)
- js通过html2canvas,jspdf,canvg来对网页进行截图生成pdf
- 通过js进行页面跳转
- Vue通过操作Dom元素 实现 拖拽文件到网页进行文件上传【JS/JQ 原理也是一样的】
- 使用jquery.form.js 进行表单提交,通过回调函数实现页面互动功能。
- 两个页面之间通过js进行传值
- 一个简单的表单提交页面,通过js进行验证
- 通过JS判断打开PC或H5页面
- Html5通过js进行页面内搜索
- Android 安卓WebView套壳H5网页 手机返回键问题(过滤二级页面,返回键相应给WebView)
- 使用jquery.form.js 进行表单提交,通过回调函数实现页面互动
- [IIS] 测试的产品登陆之后有个引用外部站点js的请求半天都无法返回,导致网页一直在打转,Selenium的driver也无法对页面进行下一步的操作
- 通过js判断访问请求来路进行页面跳转的示例
- iOS与H5交互 H5与App原生交互,一般会是前端页面中的JavaScript与App使用的原生开发语言的交互。技术方案应能达到以下要求: 在js与原生进行交互的时候能保证正常的正向调用逻辑返回
- 两个页面之间通过js进行传值
- 通过js从父页面获取子页面的值(转)