Android-webview和js腳本語言交互的時候怎么獲取js方法的返回值
2 回答

紅顏莎娜
TA貢獻(xiàn)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)注
- 1363 瀏覽
添加回答
舉報
0/150
提交
取消