android与js交互

先上效果图:


android与js交互_第1张图片

简单说明一下:上面是一个webview控件,加载的是一个存放在本地的html文件(文件存放在main/assets/test.html)。点击的时候,调用的html中定义的js函数,然后在js函数中,执行android中定义的方法,android方法中开启子线程请求网络,然后在主线程中将请求到的结果通过js传递给html进行展示。

代码如下:

test.html文件:


android与js交互_第2张图片

Activty主要代码:


android与js交互_第3张图片

这里的jsObj和html中的window.jsObj是对应的。jsObj是Demo对象的一个别称。

Demo代码:


android与js交互_第4张图片

其中的方法需要添加注解@android.webkit.JavascriptInterface,这样才能够被js调用。getDataFromNet是请求网络数据的方法。


android与js交互_第5张图片

请求到数据以后,再使用webview加载html的JavaShow函数打印结果就可以了。以上就是小弟的一点理解,如有不当之处,还望见谅!

你可能感兴趣的:(android与js交互)