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 關注
- 1348 瀏覽
添加回答
舉報
0/150
提交
取消