欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中在WebView里实现Javascript调用Java类的方法

程序员文章站 2022-03-23 14:11:51
为了方便网页和android应用的交互,android系统提供了webview中javascript网页脚本调用java类方法的机制。只要调用addjavascriptin...

为了方便网页和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();