}
//调用java有参方法
function jsCallJavaHaveParam(){
var num = Math.random();
injectedObject.jsCallJavaHaveParam(num+’’);
}
//调用java有返回值方法
function jsCallJavaHaveReturn(){
var result = injectedObject.jsCallJavaHaveReturn();
alert(‘成功调用JAVA,返回结果为:’+result);
}
//测试拦截请求方式
function testShouldOverrideUrlLoading(){
document.location = ‘http://testShouldOverrideUrlLoading.com’;
}
//测试重写OnJsAlert()方法方式
function testOnJsAlert(){
var result = alert(“测试onJsAlert”);
}
//测试重写OnJsConfirm()方法方式
function testOnJsConfirm(){
confirm(“测试onJsConfirm”);
}
//测试重写OnJsPrompt()方法方式
function testOnJsPrompt(){
prompt(“测试onJsPrompt”);
}
(五) MainActivity内容
public class MainActivity extends AppCompatActivity {
//webView
private WebView webView;
//“JAVA调用JS无参方法”
private Button btnJavaCallJSNoParamFunc;
//“JAVA调用JS有参方法”
private Button btnJavaCallJSHaveParamFunc;
//“JAVA调用JS并获得返回结果”
private Button btnJavaCallJSHaveReturnFunc;
//“跳转到html界面测试JS调用JAVA方法”
private Button btnToJSCallJavaFuncWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTitle(“demo”);
setActivityMainToContentView();
}
/***
- 重写返回键响应方法
*/
@Override
public void onBackPressed() {
//找原来activity_main.xml中的元素
View v = findViewById(R.id.btn_to_js_call_java_func_webView);
//如果找不到,就设置ContentView为activity_main
if(v == null){
setActivityMainToContentView();
} else {
super.onBackPressed();
}
}
/***
- 设置ContentView为activity_main需要的一系列初始化
*/
private void setActivityMainToContentView() {
setContentView(R.layout.activity_main);
//初始webView
initWebView();
btnJavaCallJSNoParamFunc = findViewById(R.id.btn_java_call_js_no_param_func);
btnJavaCallJSNoParamFunc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
callJs(“javascript:javaCallJsNoParam()”);
//webView.loadUrl(“javascript:javaCallJsNoParam()”);
}
});
btnJavaCallJSHaveParamFunc = findViewById(R.id.btn_java_call_js_have_param_func);
btnJavaCallJSHaveParamFunc.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
callJs(“javascript:javaCallJsHaveParam(’”+ +Math.random() +"’)");
}
});
btnJavaCallJSHaveReturn