安卓通过js与网页的H5页面进行交换
常见遇到的需求是,从网页端调起本地的分享或者支付等……
思路是APP端与H5页面协定好一个方式,来调用APP里面的方法。
H5本地交换的js
- 安卓需要写的代码:
/**AndroidJavaScript* 本地与h5页面交互的js类,这里写成内部类了* returnAndroid方法上@JavascriptInterface一定不能漏了*/private class AndroidJavaScript {Context mContxt;public AndroidJavaScript (Context mContxt) {this.mContxt = mContxt;}@JavascriptInterfacepublic void returnAndroid(String name) {//从网页跳回到APPif (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数据
安卓通过js与网页的H5页面进行交换相关推荐
- android网页打印,安卓网页打印,h5页面打印,浏览器打印,js打印工具
Android设备打印比较麻烦,一般设备厂商都提供原生app开发的SDK,我们web开发者为难了,不会原生开发啊 给大家提供一个思路,实现web加壳,利用打印浏览器实现 简单来说就是把我们的web页面 ...
- 安卓和ios移动端实现H5页面进行强制刷新
安卓和ios移动端实现H5页面进行强制刷新 定义和用法 onpageshow 事件在用户浏览网页时触发.onpageshow 事件类似于 onload 事件,onload 事件在页面第一次加载时触发, ...
- 安卓手机键盘弹出导致h5页面错乱
安卓手机键盘弹出导致h5页面错乱 特别是有表单的h5,点击input输入信息的时候提交的按钮.以及定位到下方的图片都会被挤上来. 解决方法如下: <div class="bg_img& ...
- 解决部分安卓机 自带浏览器 上h5页面 rem布局 受到 真机字体影响的问题
背景 最近有个 h5项目 由于真机(部分安卓手机)将字体调大 导致 h5 页面布局发生了错误 原因 影响了 内置 webview html 上 font-size 大小 (设置的大小 与 实际显示的 ...
- webview调用ios或者安卓的方法(内嵌h5页面调用app原生方法)
1.配合使用调用app原生的方法(h5页面不需要回调和数据) 实例1 //通知客户端,token失效 callTokenLostToApp(){let boswer=vm.config.getBrow ...
- 手机端html5网页音乐播放,js实现移动端H5页面音乐播放,兼容微信 safari浏览器...
js代码: //音乐 function music(){ var oMusic=document.getElementById("music"); var Audio=docume ...
- java与js交互视频_Android与H5交互—Java调用Js、Js调Java、H5页面调用Android播放视频...
content="ANZO,GAME,LOL,DNF,DOTA,撸啊撸,地下城与勇士,掌游宝,攻略,宝典,模拟器,加点,战报,英雄,最新,最全,最强,视频"> content ...
- 如何本地调试安卓端h5页面
1.使用数据线将安卓机接入电脑并打开usb调试模式 2.打开chrome输入chrome://inspect/#devices,安卓打开需调试app的h5页面,点击chrome inspect弹出新窗 ...
- 进一步封装axios并调用其读取数据(吐槽~在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据)
注意!!!(修改于2020年7月18日) 在安卓9.0以下或者IOS10.X以下手机端H5页面不支持,在这两种情况下的系统只能使用ajax或者原生js请求后台数据 报错截图如下 报错内容: {&quo ...
最新文章
- Input.GetAxis
- 上下两个x轴_点胶机:3轴,4轴,5轴,你懂了吗?
- 【AI产品】一键去除杂物,Photo Eraser助你拍出美丽照片
- 那些年,我们一起做过的性能优化
- [Python从零到壹] 三.语法基础之文件操作、CSV文件读写及面向对象
- spring 七种事务
- 给Angular初学者介绍一个非常方便的例子学习网站
- 手绘流程图讲解spark是如何实现集群的高可用
- 装饰模式:Decorator(转自LoveCherry)
- 运行maven项目整合ssm时的错误笔记
- android 三方_面试官送你一份Android热门三方库源码面试宝典及学习笔记
- uitableview有个属性值 separatorStyle 可用来去掉cell间的白线:
- 2010罗森伯格HDCS®综合布线分布线销商大会顺利召开
- 【Gym-100837E】Optimal Rest【完全背包】
- 【图像融合】基于脉冲神经网络PCNN实现图像融合附matlab代码
- 测试面试题+测试面试宝典(分类版)
- 高并发之volatile、synchronized关键和内存屏障(Memory Barrier)
- [集训队作业2018]喂鸽子
- 有什么画ER关系比较好用的软件图?
- 2021-04-21微信大数据对于精准营销的意义有哪些?