webview调用java方法

1.允许webview加载js :

webView.getSettings().setJavaScriptEnabled(true);

2.编写js接口类

import android.util.Log;

import android.webkit.JavascriptInterface;

public class TestJavascriptInterface {

@JavascriptInterface

public void testMethod(String value) {

Log.e("JavascriptInterface", "come in testMthod");

}

}

3.给webview添加js接口:

webView.addJavascriptInterface(new TestJavascriptInterface(),"testObj");

android中调用js方法

webView.loadUrl("javascript:if(window.testJSMethod){window.testJSMethod('this is my test content')}")

chrome的调试

1.webView.setWebContentsDebuggingEnabled(true);

2.通过chrome浏览器进行调试,在地址栏输入chrome://inspect/#devices

js交互中常见的错误

1.在Android中声明的JavascriptInterface接口的的方法中throw Exception,本地并不会捕捉到报错信息,网页端会出错。

2.web端不进行对象是否存在的判断

3.传递的参数类型不一致(尤其是数组和对象)

4.字符串类型参数未空时传递undefined

android原生webview,Android 原生与WebView JS的交互相关推荐

  1. Android开发-Android原生与WebView的js交互的实现

    前 言 一般在Android应用的开发过程中,一些核心的业务功能开发往往需要Android原生的开发,一些需要改动比较频繁的功能且不是核心的业务功能往往只需要在Android应用调用一个网页就行了.在 ...

  2. React Native之js调用Android原生使用Callback传递结果给js

    如果不清楚js如何调用Android原生,可以先参考我的这篇博客React Native实现js调用安卓原生代码 1 问题 上面的文章只是调用安卓原生显示Toast,但是我们一般会需要调用安卓的代码然 ...

  3. android h5和原生方法调用,Android原生与H5通信

    如今,混合开发似乎成为了主流.H5拥有跨平台的优势,却存在性能上的问题正好可以用搭建原生壳承载H5代码的方式去解决. 如何理解这种方式,就好像说Android原生代码封装外壳,内部包含H5代码作为核心 ...

  4. android原生代码转h5,Android原生和H5交互;Android和H5混合开发;WebView点击H5界面跳转到Android原生界面。...

    当时业务的需求是这样的,H5有一个活动商品列表的界面,IOS和Android共用这一个界面,点击商品可以跳转到Android原生的商品详情界面并传递商品ID:  大概就是点击H5界面跳转到Androi ...

  5. Android 原生webview传递header前端H5如何接收

    开发背景 跟其他公司合作的一个项目,传递参数的方式为原生通过自定义header头参数,由前端来接收. 踩坑 1 原生传参 安卓原生传参的方式很简单,通过webview.loadUrl这个方法,如下: ...

  6. js android打电话,Android开发webview与js的交互总结【安卓巴士博文大赛】

    一些应用为了节省开发时间,会开用Android.iOS内嵌HTML方式进行开发,在涉及到打电话.发短信这些Android原生功能时,需要涉及到webView中js与ANdroid的交互.这里结合我做过 ...

  7. Android原生h5互跳控制,Android原生与H5交互方式

    Demo 地址:码云 一.Android API提供的官方交互方式 1.webView.getSettings().setJavaScriptEnabled(true);设置webview运行执行js ...

  8. Android webview支持H5页面通过js实现文件上传、图片上传

    一.问题场景: 项目中遇到通过网页上传文件的需求,IOS直接是支持的,安卓端却没反应,有些机型甚至闪退.其实是Android的webview默认是不支持<input type="fil ...

  9. 简单的使用腾讯X5内核浏览器替代Android原生的WebView

    目录 简单的使用腾讯X5内核浏览器替代Android原生的WebView 第一步:X5官网下载SDK,引入到AndroidStudio中 第二步:如果是64位CPU手机,则需要引入一个so(liblb ...

最新文章

  1. java 操作oracle 源码_java对oracle的常用操作示例源码
  2. [转]Apache Commons IO入门教程
  3. 045_CSS3过渡
  4. 中国建设银行(2011.11.19南京大学)
  5. LiveVideoStack年终技术盘点总结
  6. java爬虫post 404_POST 后台404错误
  7. struts2中Action名称的搜索顺序
  8. 带你掌握Vue过滤器filters及时间戳转换
  9. 【JSP售票系统】JSP+SSH+MSSQL火车票铁路售票系统源码
  10. 弱口令扫描工具mysql ftp_S-X弱口令扫描工具 V1.0
  11. android 签名工具 autoSign jarsigner
  12. 在Openjdk 8 中如何合理使用容器 memory 资源
  13. 面试官:我们来聊一聊Redis吧,你了解多少就答多少
  14. ZBrush自带笔刷的特性你都知道哪些?
  15. nmap工具介绍及常用命令
  16. 4.JDK安装与卸载
  17. Pygame实战:升级后的2048小游戏—解锁新花样,根本停不下来【附源码】
  18. 休假管理系统——类图文档
  19. 股票编辑器财务数据关键字说明
  20. php如何生成一年的日历表_html - PHP如何生成一个指定年份一整年的日历

热门文章

  1. Java—关于单例模式的实现方式
  2. ios15使用NSXMLParser解析XML
  3. python preference界面设置_Python preferences
  4. Android开发之关于transformDexArchiveWithExternalLibsDexMergerForDebug java.lang.OutOfMemoryError问题的参考解决方案
  5. java jsonp_java结合使用Jsonp的例子
  6. 用Python实现一个SVM分类器策略
  7. OpenStack部署之小结
  8. kibana从入门到精通-Kibana安装
  9. win7-安装phantomjs,并添加环境变量。
  10. 【Django】入门篇:项目创建(pycharm、linux)