我在写项目的时候需要js和java在WebView进行交互,并且需要js调用java方法并返回参数给js,找了几个文档感觉写的不怎么详细,我就想了个办法试了试成功之后我就将细节写成文档记录一下,方便日后查看,也请各位大佬指出一些问题!
WebView部分
webView.addJavascriptInterface(new JsInterface(this), "AndroidWebView"); //重要的
Java部分
@SuppressLint({"SetJavaScriptEnabled", "AddJavascriptInterface"})
class JsInterface {
private Context mContext;
public JsInterface(Context context) {
this.mContext = context;
}
@JavascriptInterface
public String getName(){
return getUser();
}
@JavascriptInterface
public String getPass(){
return getPass();
}
}
Js部分
function loading(){
var name=window.AndroidWebView.getName()
var pass=window.AndroidWebView.getPass()//调用java方法
$.post("101.111.11:800",{remark:name,password:pass},function(result){
var obj=result;
if(obj.code==100){
toast("登录成功");
}else{
toast("登录失败");
}
});
}