Android-webview和js腳本語言交互的時候怎么獲取js方法的返回值
2 回答
紅顏莎娜
TA貢獻1842條經(jīng)驗 獲得超13個贊
方法:
1、通過webview訪問js腳本
2、js腳本再調(diào)用webview中的java函數(shù)把結(jié)果返回
示例代碼:
通過本地的webview打開腳本頁面。
調(diào)用步驟
1、設(shè)置webview支持腳本
| 1 | webSettings.setJavaScriptEnabled(true); |
2、打開腳本頁面
| 1 | mWebView.loadUrl("file:///android_asset/demo.html");//這里打開該app的asset目錄下的demo.html,里面含有wave函數(shù)腳本 |
3、調(diào)用腳本
| 1 | mWebView.loadUrl("javascript:wave()");//調(diào)用打開頁面中的wave函數(shù) |
4、webview中建立js能夠訪問
| 12345678 | mWebView.addJavascriptInterface(new DemoJavaScriptInterface(), "demo");//js可以通過demo訪問到DemoJavaScriptInterface 類中的方法。 final class DemoJavaScriptInterface { DemoJavaScriptInterface() { } public void clickOnAndroid(String result) { System.out.prinltn("返回的結(jié)果"+result); } } |
5、js訪問webview方法
| 123456 | <script language="javascript"> function wave() { alert("1"); window.demo.clickOnAndroid('結(jié)果1');//返回結(jié)果,調(diào)用java方法 } </script> |
- 2 回答
- 0 關(guān)注
- 1388 瀏覽
添加回答
舉報
0/150
提交
取消
