public class MainActivity extends AppCompatActivity{
private static final String TAG = "MainActivity";
private WebView mWebView;
/**
*必加
*/
@SuppressLint("JavascriptInterface")
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mWebView = (WebView) findViewById(R.id.webview);
mWebView.loadUrl("file:///android_asset/js_java_interaction.html");//加载本地asset下面的js_java_interaction.html文件
//mWebView.loadUrl("https://www.baidu.com/");//加载本地assets下面的js_java_interaction.html文件
WebSettings webSettings = mWebView.getSettings();
webSettings.setJavaScriptEnabled(true);//打开js支持
/**
* 打开js接口給H5调用,参数1为本地类名,参数2为别名;h5用window.别名.类名里的方法名才能调用方法里面的内容,例如:window.android.back();
* */
mWebView.addJavascriptInterface(new JsInteration(), "android");
mWebView.setWebViewClient(new WebViewClient());
mWebView.setWebChromeClient(new WebChromeClient());
}
/**
* 自己写一个类,里面是提供给H5访问的方法
* */
public class JsInteration {
@JavascriptInterface//一定要写,不然H5调不到这个方法
public void back() {
log.i("aa",00)
}
}
}