android代码:
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView web = (WebView)findViewById(R.id.webView1);
web.getSettings().setJavaScriptEnabled(true);
web.addJavascriptInterface(new Login(), "JsLogin");
web.loadUrl("file:///android_asset/login.html");
web.setWebChromeClient(new WebChromeClient(){
@Override
public boolean onJsAlert(WebView view, String url, String message, JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
}
public class Login{
@JavascriptInterface //当targetSdkVersion>16的时候加上这句。
public void start(){
Toast.makeText(MainActivity.this, "调用成功", 1).show();
}
}
}
html代码:
在button的点击事件里调用。
<button class="login_dl" onclick="javascript:JsLogin.start();">登录</button>