参考链接:https://blog.csdn.net/leejizhou/article/details/50894531
https://blog.csdn.net/carson_ho/article/details/64904691
https://www.jianshu.com/p/3c94ae673e2a
Android和JS脚本的交互:
1.webview绑定javascriptInterface,js脚本通过这个接口来调用java代码, 第一个参数是自定义类对象,映射成JS对象,,第二个参数是别名,JS脚本通过这个别名来调用java的方法,这个别名跟HTML代码中也是对应的。
// 通过addJavascriptInterface()将Java对象映射到JS对象(调用分享的代码)
//参数1:Javascript对象名
//参数2:Java对象名
mWebView.addJavascriptInterface(new AndroidtoJs(), "test");//AndroidtoJS类对象映射到js的test对象
2.Android调用JS脚本
2.1.直接Webview调用loadUrl方法,里面是JS的方法名,并可以传入参数,javascript:xxx()方法名需要和JS方法名相同
mWebView.loadUrl("javascript:javacalljs()");
2.2.HTML代码
image.png
3.JS脚本调用Android代码:
// 获取来自h5页面的数据
public class AndroidtoJs extends Object {
// 定义JS需要调用的方法
// 被JS调用的方法必须加入@JavascriptInterface注解
@JavascriptInterface
public void hello(String msg) {
getWebMsg=msg;
parseJSONWithJSONObject(msg);
}
}
网友评论