解析Android中webview和js之間的交互
1.android中利用webview調(diào)用網(wǎng)頁上的js代碼。
Android 中可以通過webview來實現(xiàn)和js的交互,在程序中調(diào)用js代碼,只需要將webview控件的支持js的屬性設(shè)置為true,,然后通過loadUrl就可以直接進行調(diào)用,如下所示:
mWebView.getSettings().setJavaScriptEnabled(true);
mWebView.loadUrl("javascript:test()");
2. 網(wǎng)頁上調(diào)用android中java代碼的方法
在網(wǎng)頁中調(diào)用java代碼,需要在webview控件中添加javascriptInterface。如下所示:
mWebView.addJavascriptInterface(new Object() {
public void clickOnAndroid() {
mHandler.post(new Runnable() {
public void run() {
Toast.makeText(Test.this, "測試調(diào)用java", Toast.LENGTH_LONG).show();
}
});
}
}, "demo");
在網(wǎng)頁中,只需要像調(diào)用js方法一樣,進行調(diào)用就可以
<div id='b'><a onclick="window.demo.clickOnAndroid()">b.c</a></div>
3. Java代碼調(diào)用js并傳參
首先需要帶參數(shù)的js函數(shù),如function test(str),然后只需在調(diào)用js時傳入?yún)?shù)即可,如下所示:
mWebView.loadUrl("javascript:test('aa')");
4.Js中調(diào)用java函數(shù)并傳參
首先一樣需要帶參數(shù)的函數(shù)形式,但需注意此處的參數(shù)需要final類型,即得到以后不可修改,如果需要修改其中的值,可以先設(shè)置中間變量,然后進行修改。如下所示:
mWebView.addJavascriptInterface(new Object() {
public void clickOnAndroid(final int i) {
mHandler.post(new Runnable() {
public void run() {
int j = i;
j++;
Toast.makeText(Test.this, "測試調(diào)用java" + String.valueOf(j), Toast.LENGTH_LONG).show();
}
});
}
}, "demo");
然后在html頁面中,利用如下代碼<div id='b'><a onclick="window.demo.clickOnAndroid(2)">b.c</a></div>,
即可實現(xiàn)調(diào)用
- android WebView加載html5介紹
- Android中實現(xiàn)Webview頂部帶進度條的方法
- Android WebView使用方法詳解 附j(luò)s交互調(diào)用方法
- android中webview控件和javascript交互實例
- android webview中使用Java調(diào)用JavaScript方法并獲取返回值
- 在Android系統(tǒng)中使用WebViewClient處理跳轉(zhuǎn)URL的方法
- Android中Webview打開網(wǎng)頁的同時發(fā)送HTTP頭信息方法
- Android開發(fā)之WebView組件的使用解析
- Android中 webView調(diào)用JS出錯的解決辦法
- Android Webview滑進出屏幕閃爍的解決方法
相關(guān)文章
Android實現(xiàn)一個比相冊更高大上的左右滑動特效(附源碼)
這篇文章主要介紹了Android實現(xiàn)一個比相冊更高大上的左右滑動特效(附源碼),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02Android使用自定義View繪制漸隱漸現(xiàn)動畫
這篇文章主要介紹了Android使用自定義View繪制漸隱漸現(xiàn)動畫效果的相關(guān)內(nèi)容,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-09-09Android實現(xiàn)彈出輸入法時頂部固定中間部分上移的效果
本文主要介紹了Android實現(xiàn)彈出輸入法時頂部固定中間部分上移的效果的方法。具有很好的參考價值,下面跟著小編一起來看下吧2017-03-03Android使用Circular Reveal動畫讓頁面跳轉(zhuǎn)更炫酷
本篇文章主要介紹了Android使用Circular Reveal動畫讓頁面跳轉(zhuǎn)更炫酷,具有一定的參考價值,有興趣的可以了解一下2017-08-08Android仿iOS實現(xiàn)側(cè)滑返回功能(類似微信)
這篇文章主要為大家詳細介紹了Android仿iOS實現(xiàn)側(cè)滑返回功能,類似微信功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-12-12