项目中经常用到WebView与H5的交互,一个是H5调本地方法,一个是本地调H5方法,在此记录一下。

首先,启用JS支持

//启用js支持

webSettings.setJavaScriptEnabled(true);

1. JS调用Native方法

// JS调用Native方法

mWebView.addJavascriptInterface(new JsInterface(), "android"); // "android"是js那边调用Java方法时的一个“句柄”或者引用,跟h5约定好,可以写成别的。android.openUrlByBrowser()

public class JsInterface {

@JavascriptInterface

public void backpage() {  // 无返回值,无参

finish();

}

@JavascriptInterface

public void openUrlByBrowser(String url) {  // 无返回值,有参

openBrowser(url);

}

@JavascriptInterface

public boolean haszhifubao() {  // 有返回值

return AppPackageChecked.isExist(WebShowActivity.this, "com.eg.android.AlipayGphone");

}

}

2. Native调用JS方法

private void pauseVideo() {

mWebView.loadUrl("javascript:pauseVideo()");  // pauseVideo()是H5那边定义好的

}

使用时Android直接调用pauseVideo()就好了

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.left_layout:

pauseVideo();

finish();

break;

}

}

基本就是这些。

Android中webView和网页的交互

Android中webView和网页的交互 Android中webView跟网页的交互式通过JavaScript进行的.具体步骤: 1.创建JavaScript,在点击的时候调用JavaScript ...

Android中WebView的JavaScript代码和本地代码交互的三种方式

一.Android中WebView的漏洞分析最近在开发过程中遇到一个问题,就是WebView使用的时候,还是需要解决之前系统(4.2之前)导致的一个漏洞,虽然现在这个系统版本用户很少了,但是也不能忽视 ...

Android 中Webview 自适应屏幕

随笔 - 478  文章 - 3  评论 - 113 Android 中Webview 自适应屏幕   webview中右下角的缩放按钮能不能去掉 settings.setDisplayZoomCon ...

android 中webview的屏幕适配问题

两行代码解决WebView的屏幕适配问题 一个简单的方法,让网页快速适应手机屏幕,代码如下 1 2 WebSettings webSettings= webView.getSettings(); we ...

Android中退出多个Activity的两个经典方法

这里介绍两种方法:一种把每个activity记住,然后逐一干掉:另一种思路是使用广播. 方法一.用list保存activity实例,然后逐一干掉 上代码: import java.util.Linke ...

Android中webview和js之间的交互(转)

http://www.cnblogs.com/leizhenzi/archive/2011/06/29/2093636.html 1.android中利用webview调用网页上的js代码. Andr ...

Android中webview跟JAVASCRIPT中的交互

在android的应用程序中,可以直接调用webview中的javascript代码,而webview中的javascript代码,也可以去调用ANDROID应用程序(也就是JAVA部分的代码).下面 ...

Android中WebView使用全解

开始 在Android系统中内嵌的WebKit,这是一个浏览器内核,它帮助着我们可以浏览网页.在实际开发中,如果你想让你的App能够访问网页,那就需要用到WebView这个控件. 如何使用? 其实使用 ...

Android中Webview使用自定义的javascript进行回调

先说为什么需要讨论这个问题. 现在很多的手机应用,都可能会直接嵌入一个web页面.这样做的好处:一个是功能更新方便,维护起来容易,只需要维护服务器的页面即可,不需要更新客户端:另一个是功能通用,不仅a ...

随机推荐

【原创】有关Silverlight中“DataGrid中单元格动态绑定ComboBox单击时数据项莫名被清除 ”的解决方案及思路。

今天上班遇到一个很古怪的问题,搞了半天愣是没找到原因.是这样的,在Datagrid中有绑定一个ComboBox列,其不包含在 model数据中,而是单独在LoadingRow事件中去 从数据库拿数据绑 ...

ubuntu环境ceph配置入门(一)

环境:ubuntu server 14.04 64bit,安装ceph版本号0.79 正常情况下应有多个主机,这里为了高速入门以一台主机为例,多台主机配置方式类似. 1. 配置静态IP及主机名 静态I ...

学习如何看懂SQL Server执行计划(二)——函数计算篇

二.函数计算部分 --------------------标量聚合--------------------/* 标量聚合-主要在聚合函数操作中产生 计算标量:根据行中的现有值计算出一个新值 流聚合:在 ...

openLayers,常见地图实例

http://openlayers.org/en/master/examples/epsg-4326.html -- 标尺 http://openlayers.org/en/master/exampl ...

laravel----------laravel一些注意事项和一些说明

1.php artisan key:generate 解释:.env文件里面的APP_KEY参数设置为一个随机字符串也就是这个key是一个随机字符串,用于实现框架中的encrypt(加密)服务,   ...

JavaSE 初学系统托盘图标SystemTray类

文章目录 1.预备知识 2.使系统托盘显示图标 3.添加提示 4.添加弹出菜单 设置Java程序的系统托盘图标,用到SystemTray类和TrayIcon类. 1.预备知识 JavaAPI对于Sys ...

用node.js写个在Bash上对字符串进行Base64或URL的encode和decode脚本

一:自己这段时间经常要用到Base64编码和URL编码,写个编译型语言有点麻烦干脆就用node.js弄了个,弄好后在/etc/profile里加上alias就能完成工具的配置,先上代码: functi ...

Prism 4 文档 ---第2章:初始化Prism应用程序

这一章节介绍Prism应用程序启动和运行时发生的内容.Prism应用程序在启动时需要有注册和配置的过程,这就是所谓的自自启动程序. 什么是自启动引导程序?     引导程序是一个类,它负责使用Pri ...

简化js--函数返回

mysql 建立表之间关系 一对一 练习2

创建db5数据库 create database db5 charset=utf8; use db5; 例二:一个管理员唯一对应一个用户 用户表: id user password 1 egon xx ...

android webview调js方法,Android中WebView与H5的交互,Native与JS方法互调相关推荐

  1. js判断wifi_使用JS在浏览器中判断当前网络连接状态的几种方法

    使用JS在浏览器中判断当前网络状态的几种方法如下: 1. navigator.onLine 2. ajax请求 3. 获取网络资源 4. bind() 1. navigator.onLine 通过na ...

  2. js计算数组中每个元素出现的次数(2种方法)

    js计算数组中每个元素出现的次数(2种方法) js动态生成唯一id Javascript生成全局唯一标识符(GUID,UUID)的方法

  3. python 定义函数方法,python中函数如何定义?python函数的调用方法介绍

    本篇文章给大家带来的内容是关于python中函数如何定义?python函数的调用方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1. 函数的概念,函数是将具有独立功能的代码块 ...

  4. android 控件宽度自适应_Android中让图片自适应控件的大小的方法

    这就需要把.png格式的图片转成.9.png格式,.9.png就是后缀名.在安装Android-SDK时自带了可以把.png格式的图片编辑后保存就变成了.9.png格式.这个文件存放在你所安装的And ...

  5. android怎么调textview间距,Android如何设置TextView的行间距、行高。

    Android系统中TextView默认行间距比较窄,不美观. 我们可以设置每行的行间距,可以通过属性android:lineSpacingExtra或android:lineSpacingMulti ...

  6. js从路径中遍历出文件或图片名称,js截取路径中的图片和文件名称

    我是根据底部文章封装了他的方法 function bianli(path) {let filename;if (path.indexOf("/") > 0) //如果包含有& ...

  7. ruby hash方法_Ruby中带有示例的Hash.rassoc(obj)方法

    ruby hash方法 Hash.rassoc(obj)方法 (Hash.rassoc(obj) Method) In this article, we will study about Hash.r ...

  8. matlab 离群值去除方法,数据清洗中异常值(离群值)的判别和处理方法

    前天参加面试的时候被问了一个题:选择什么样的指标来代表总体情况?我回答的不是很好,具体怎么回答的记不太清了,感觉回答的不是很好.回来后吸取教训,查了查资料简单总结: 如果是类别变量,可以用众数来代表总 ...

  9. python 不安全的包或方法_Python中的10个常见安全漏洞及修复方法

    写安全的代码很困难,当你学习一门编程语言.一个模块或框架时,你会学习其使用方法.在考虑安全性时,你需要考虑如何避免代码被滥用,Python也不例外,即使在标准库中,也存在着许多糟糕的实例.然而,许多 ...

  10. android通过webview调起支付宝app支付

    android通过webview调起支付宝app支付 webview在加载网页的时候会默认调起手机自带的浏览器加载网页,用户体验不好.但当用户设置浏览器客户端(setWebViewClient)设置这 ...

最新文章

  1. View的Touch事件分发(一.初步了解)
  2. 渥太华大学药学院院长Daniel Figeys团队诚邀药物-微生物组方向博士后
  3. 机器人的兴起:洞察2020全球机器人市场【Part 1】
  4. springboot打包时加入本地jar打包
  5. latch.await java有什么作用_java相关:CountDownLatch源码解析之await()
  6. 反射获取有参数的构造方法并运行
  7. Java 8的新增功能(第I部分-JavaFX)
  8. 输入python出现商店_Win 10 中使用 Python 碰到的奇怪现象
  9. hbase 页面访问_HBase在滴滴出行的应用场景和最佳实践
  10. 高级php程序员,php高级程序员该学什么
  11. matlab矩阵作分钟平均,提高matlab运行速度和节省空间的心得合集(ZT)
  12. lock.lock()使用,与synchronized对比
  13. linux下实现getch()函数的功能,linux下有没有和windows下的getch函数功能基本一样的函数?...
  14. USB 协议整理 八:STM32官方USB库
  15. 手机抢答器正在替代传统抢答器
  16. Vue — jTopo
  17. python socket服务端
  18. 数字代理在持续由内而外重塑创新
  19. springboot聚合工程打包报错Compilation failure浅析
  20. 注册Apple ID

热门文章

  1. 计算机基础知识187,中职计算机基础 (187)(11页)-原创力文档
  2. latex 公式编号_放弃mathtype,word也可以轻松输入公式
  3. mysql 组内排名_【原】MySQL分组排序(包含组内排名、求中位数)
  4. hp虚拟服务器,源自基础设施灵活多变的终极自由 惠普(HP)虚拟连接技术(Virtual Connect)...
  5. mysql必会语法_sql语法:sql必读必会(二)mysql中的函数大全
  6. PHP被浏览器解释成注释,HTML+CSS入门 在HTML中嵌入的php代码会被浏览器注释掉如何解决...
  7. php mui.picker,www MUI框架里边有很多例子教你如何使用 开发手机界面 WEB(ASP,PHP,...) 251万源代码下载- www.pudn.com...
  8. war包部署vue_又一干货实战,spring boot2:以 War 包的形式部署
  9. 电大本科c及语言设计形考答案,2020国家开放大学电大《C语言程序设计》网络课形考任务4作业及答案(15页)-原创力文档...
  10. qt qgis linux,QT_QGIS_基本使用