怎么实现javascript中调用java类中的方法

JavaScript024

怎么实现javascript中调用java类中的方法,第1张

为了方便网页和Android应用的交互,Android系统提供了WebView中JavaScript网页脚本调用Java类方法的机制。只要调用addJavascriptInterface方法即可映射一个Java对象到JavaScript对象上。

1、映射Java对象到JavaScript对象上

代码如下:

mWebView = (WebView) findViewById(R.id.wv_content)

mWebView.setVerticalScrollbarOverlay(true)

final WebSettings settings = mWebView.getSettings()

settings.setSupportZoom(true)

//WebView启用Javascript脚本执行

settings.setJavaScriptEnabled(true)

settings.setJavaScriptCanOpenWindowsAutomatically(true)

//映射Java对象到一个名为”js2java“的Javascript对象上

//JavaScript中可以通过"window.js2java"来调用Java对象的方法

mWebView.addJavascriptInterface(new JSInvokeClass(), "js2java")

代码如下:

/**网页Javascript调用接口**/

class JSInvokeClass {

public void back() {

activity.finish()

}

}

2、JavaScript调用Java对象示例

调用上述JSInvokeClass类对象的back方法,如下:

复制代码 代码如下:

window.js2java.back()

通常处理这种情况都是用ajax(异步请求)来处理,

发一个ajax请求到你的java类中,返回数据看看是否正确再做处理 ajax调用方式

$.ajax({

type: "post",//提交方式

url: "test.action",/ /提交的地址(RUL)

data: "name='张三'",//提交的数据库(key-value形式,多个参数用&分割)

dataType: "json",//服务器返回的数据类型

success: function(data){//执行成功后回调的方法

alert(data)

}

})

使用这个ajax别忘记导入jquery