最近面试中老被问到这个问题,故此整理出来,以免以后忘了还得重新找。如有错误欢迎指正,新司机上路,请多多关照。

android与h5互调实际上是Java代码与javascrpte的互调。

首先简单介绍webview,加载网页的控件,常用方法如下。

webview.loadurl(url) 加载网页

websettings.setJavaScriptEnabled(true) 设置支持javascript

webview.setWebviewClient(new WebviewClient) 自定义浏览器,在app内部打开网页,不在调用系统浏览器。

java调javaScript


webview.loadurl("javascript:javaCallJs(" + " ' " +number+ " ' " + ")");

setContentView(webview);


格式比较蛋疼,js相关方法代码如下



javaScript调java

webview.addJavaSciptInterface(new JInterface(),"Android");

js中可以通过这个Android字段去调用Interface中的java方法。

接口中的方法要加注解JavascriptInterface。

接口如下:

class JInterface(){

      

       @JavascriptInterface

public void showToast(){

.........

}

}





更多相关文章

  1. ClipDrawable让开发变得更简单
  2. Android(安卓)Volley框架
  3. AndroidO SystemUI-QuickSettings
  4. Android应用程序组件间通信(一)——Intent类简介
  5. 禁用GPU硬件加速方法
  6. 如何让android的service一直在后台运行
  7. 深入理解Android中的Handler机制
  8. Android(安卓)解决打包时提示65536问题
  9. android usb解析(二)UsbHostManager(and6.0)

随机推荐

  1. Android的搜索框架实例详解
  2. [置顶] 我的Android进阶之旅------>Andro
  3. 查询方法android的CursorLoader用法小结
  4. Android(安卓)签名打包
  5. Android之Wifi学习(2)------连接Wifi
  6. Android(安卓)JNI和NDK学习(5)--JNI分析A
  7. android studio常用窗口简介
  8. android 简析自定义布局、布局的执行流程
  9. Android(安卓)SDK 安装(升级)失败(A fold
  10. APP瘦身这一篇就够了