美文网首页
Android和Js互调,针对4.4以上

Android和Js互调,针对4.4以上

作者: 柯基爱蹦跶 | 来源:发表于2018-06-19 14:26 被阅读34次

在如今这H5和原生混行的时代,网页和原生交互也避免不了。下面记录一下Android和Js互调的实际操作。接下来这段时间得学Vue.js了。

一、 先给出WebView相关配置截图


webView配置.png

二、 说明一下,不需要实现WebViewClient和WebChromeClient,另外加载本地HTML和网络Url都是不影响的


不需实现webViewClient和WebChromeClient.png 加载本地HTML和网络URL.png

在其中我就遇到了一个问题,同样的代码加载本地HTML文件(也就是放在项目assets里的HTML文件)就能成功,但一换成网络URL加载就不行,找了很多博客并没发现这个问题,最后确定了是缓存的原因,出现这种问题,把应用清除一下数据试试。

三、 接着给出Android调用js实例代码截图


Android调用js方法.png

这里说明一下:webView的evaluateJavascript方法是在Android4.4以上才支持的,另外这是个异步方法,因此我将它放进了主线程里执行。或者放到onPageFinish里执行。
如果需要js给出返回值,那么在js方法里return需要的东西,其返回值会回调到onReceiveValue(String value)方法里。


js返回参数.png

四、 下面是js调用Android的有参方法(无参方法也一样)
这里说明一下:js调Android方法的格式(window.约定名称.方法名),"约定名称"也就是addJavaScriptInterface里的第二个参数。


js里的方法.png

接着对应需要被js调用的方法,这里需要给方法名加上@JavascriptInterface注解


js调用带参Android方法.png
这就嗨皮了!
调用成功.png

需要注意的都在文字里,文字没有被加粗,但也没啥废话,还是比较好阅读的。

相关文章

网友评论

      本文标题:Android和Js互调,针对4.4以上

      本文链接:https://www.haomeiwen.com/subject/oxuaeftx.html