Android-webview和js脚本语言交互的时候怎么获取js方法的返回值
2 回答
红颜莎娜
TA贡献1842条经验 获得超13个赞
方法:
1、通过webview访问js脚本
2、js脚本再调用webview中的java函数把结果返回
示例代码:
通过本地的webview打开脚本页面。
调用步骤
1、设置webview支持脚本
| 1 | webSettings.setJavaScriptEnabled(true); |
2、打开脚本页面
| 1 | mWebView.loadUrl("file:///android_asset/demo.html");//这里打开该app的asset目录下的demo.html,里面含有wave函数脚本 |
3、调用脚本
| 1 | mWebView.loadUrl("javascript:wave()");//调用打开页面中的wave函数 |
4、webview中建立js能够访问
| 12345678 | mWebView.addJavascriptInterface(new DemoJavaScriptInterface(), "demo");//js可以通过demo访问到DemoJavaScriptInterface 类中的方法。 final class DemoJavaScriptInterface { DemoJavaScriptInterface() { } public void clickOnAndroid(String result) { System.out.prinltn("返回的结果"+result); } } |
5、js访问webview方法
| 123456 | <script language="javascript"> function wave() { alert("1"); window.demo.clickOnAndroid('结果1');//返回结果,调用java方法 } </script> |
- 2 回答
- 0 关注
- 1409 浏览
添加回答
举报
0/150
提交
取消
