html5中文学习网

您的位置: 首页 > android » 正文

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

[ ] 已经帮助:人解决问题

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

1、映射Java对象到JavaScript对象上BWiHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
BWiHTML5中文学习网 - HTML5先行者学习网
mWebView = (WebView) findViewById(R.id.wv_content);BWiHTML5中文学习网 - HTML5先行者学习网
mWebView.setVerticalScrollbarOverlay(true);BWiHTML5中文学习网 - HTML5先行者学习网
final WebSettings settings = mWebView.getSettings();BWiHTML5中文学习网 - HTML5先行者学习网
settings.setSupportZoom(true);BWiHTML5中文学习网 - HTML5先行者学习网

//WebView启用Javascript脚本执行BWiHTML5中文学习网 - HTML5先行者学习网
settings.setJavaScriptEnabled(true);BWiHTML5中文学习网 - HTML5先行者学习网
settings.setJavaScriptCanOpenWindowsAutomatically(true);BWiHTML5中文学习网 - HTML5先行者学习网

//映射Java对象到一个名为”js2java“的Javascript对象上BWiHTML5中文学习网 - HTML5先行者学习网
//JavaScript中可以通过"window.js2java"来调用Java对象的方法BWiHTML5中文学习网 - HTML5先行者学习网
mWebView.addJavascriptInterface(new JSInvokeClass(), "js2java");BWiHTML5中文学习网 - HTML5先行者学习网

BWiHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
BWiHTML5中文学习网 - HTML5先行者学习网
/**网页Javascript调用接口**/BWiHTML5中文学习网 - HTML5先行者学习网
class JSInvokeClass {BWiHTML5中文学习网 - HTML5先行者学习网
    public void back() {BWiHTML5中文学习网 - HTML5先行者学习网
        activity.finish();BWiHTML5中文学习网 - HTML5先行者学习网
    }BWiHTML5中文学习网 - HTML5先行者学习网
}BWiHTML5中文学习网 - HTML5先行者学习网
BWiHTML5中文学习网 - HTML5先行者学习网

2、JavaScript调用Java对象示例BWiHTML5中文学习网 - HTML5先行者学习网

调用上述JSInvokeClass类对象的back方法,如下:BWiHTML5中文学习网 - HTML5先行者学习网

复制代码 代码如下:
BWiHTML5中文学习网 - HTML5先行者学习网
window.js2java.back();BWiHTML5中文学习网 - HTML5先行者学习网
BWiHTML5中文学习网 - HTML5先行者学习网

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助