在View层创建一个js包
public class AndroidJs {
@JavascriptInterface
public void hello(String msg){
Log.e("my","androidtojs"+msg);
}
}
创建一个Activity
public class WebViewActivity extends BaseActivity{
private WebView webView;
private Button button;
@Override
protected int bindLayout() {
return R.layout.activity_webview;
}
@Override
protected void initView() {
webView = findViewById(R.id.webview);
button = findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
webView.loadUrl("javascript:callJS()");
}
});
}
@Override
protected void initData() {
WebSettings settings = webView.getSettings();
settings.setJavaScriptEnabled(true);
//settings.setJavaScriptCanOpenWindowsAutomatically(true);
webView.addJavascriptInterface(new AndroidJs(),"test");
webView.loadUrl("file:///android_asset/javascript.html");
webView.setWebChromeClient(new WebChromeClient(){
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
}
}