android与js交互
成都创新互联是一家专注于做网站、成都网站建设与策划设计,铜山网站建设哪家好?成都创新互联做网站,专注于网站建设10年,网设计领域的专业建站公司;建站业务涵盖:铜山等地区。铜山做网站价格咨询:13518219792
// 设置编码
webView.getSettings().setDefaultTextEncodingName("utf-8");
// 支持js
webView.getSettings().setJavaScriptEnabled(true);
//参数1为传递的android对象,参数2为传递对象的变量名称之后JS中使用变量名进行对对象的操作
webView.addJavascriptInterface(new TestJs(), "testObj");
注意点:
@JavascriptInterface//安卓4.0以上需要在被JS调用的方法上添加此注释否则无法调用到,4.0一下版本可以调用到
安卓调用Js:
String invokeJs = "\"sdffeafsf\"";//传递字符串参数需要加上双引号
String javascript = "javascript:showString(" + invokeJs +");";
webView.loadUrl(javascript);
JS调用安卓方法:
testObj.jsMethod("invokeAndroid");