android調(diào)用js,js調(diào)用Android http地址實測非本地html赴穗。

從網(wǎng)上巴拉了很多都是有一絲絲問題不夠完美 主要問題就是Android調(diào)用js不通憔四。
問題場景js調(diào)用了Android后立馬回調(diào)js方法出現(xiàn)調(diào)用無效。但是從點擊時間調(diào)用js是沒有問題的般眉。
解決方案以及完整代碼如下:

//開啟JavaScript支持
mWebview.getSettings().setJavaScriptEnabled(true);
// 注冊js調(diào)用Android對象  這李的Android參數(shù)與html方法要保持一致
mWebview.addJavascriptInterface(new Info(), "android");
mWebview.loadUrl("file:///android_asset/alert.html");

JS調(diào)用Android的方法類

/**
* js調(diào)用Android方法
*/
@SuppressLint("JavascriptInterface")
public class Info {
@JavascriptInterface
public void getInfo(String data) {
//            js調(diào)用Android有參方法
ToastUtil.showShortToast(data);
toJs();
}

@JavascriptInterface
public void getInfo() {
//           js調(diào)用Android 無參方法
ToastUtil.showShortToast("js調(diào)用無參");
toJs();
}
}

Android調(diào)用JS的方法

/**android調(diào)用js
* 必須要切換到UI線程A苏浴!5樵摺J裂础!2憾浴B缍稀2锰妗!C脖俊H跖小!T瓿瘛TQ!>还巍0啤!Q透浮V暧ぁ!J钊稀@Ы椤!U杭省Wā!A竿8睢!5挤亍S炝肌!1怪堋3揪濉!5莸荨喷橙!
*
* */
@JavascriptInterface
public void toJs() {
ThreadUtil.runOnUiThread(new Runnable() {
@Override
public void run() {
//注意test的''單引號
mWebview.loadUrl("javascript:javacalljswith(" + "'test'" + ")");
}
});
}

下面是html代碼,這段代碼可以放服務(wù)器遠(yuǎn)程訪問效果是一樣的漾狼,重慢。

<html>
<head>
    <meta http-equiv="Content-Type" charset="UTF-8"/>

    <script type="text/javascript">
            function javacalljs(){
                 document.getElementById("showmsg").innerHTML = "JAVA調(diào)用了JS的無參函數(shù)";
            }

            function javacalljswith(arg){
                 document.getElementById("showmsg").innerHTML = (arg);
            }


    </script>

</head>

<body>
<h3>Web模塊</h3>

<h3 id="showmsg">調(diào)用js顯示結(jié)果</h3>
<!--調(diào)用無參  window.android.getInfo()  注意這個android要和webview注冊js時的第二個參數(shù)一樣 -->
<!--//        注冊js調(diào)用Android對象
mWebview.addJavascriptInterface(new Info(), "android");-->
<input type="button" value="Js調(diào)用Java代碼" onclick="window.android.getInfo()"/>
<!--調(diào)用有參-->
<input type="button" value="Js調(diào)用Java代碼并傳參數(shù)" onclick="window.android.getInfo('Js傳過來的參數(shù)')"/>
</body>
</html>

ThreadUtil工具類參考這三行代碼

Looper mainlooper = Looper.getMainLooper();
Handler handler = new Handler(mainlooper);
handler.post(runnable);
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市逊躁,隨后出現(xiàn)的幾起案子似踱,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件核芽,死亡現(xiàn)場離奇詭異囚戚,居然都是意外死亡,警方通過查閱死者的電腦和手機轧简,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進店門驰坊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人哮独,你說我怎么就攤上這事拳芙。” “怎么了皮璧?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵舟扎,是天一觀的道長。 經(jīng)常有香客問我悴务,道長睹限,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任讯檐,我火速辦了婚禮羡疗,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘别洪。我一直安慰自己叨恨,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布挖垛。 她就那樣靜靜地躺著特碳,像睡著了一般。 火紅的嫁衣襯著肌膚如雪晕换。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天站宗,我揣著相機與錄音闸准,去河邊找鬼。 笑死梢灭,一個胖子當(dāng)著我的面吹牛夷家,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播敏释,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼库快,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了钥顽?” 一聲冷哼從身側(cè)響起义屏,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后闽铐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蝶怔,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年兄墅,在試婚紗的時候發(fā)現(xiàn)自己被綠了踢星。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡隙咸,死狀恐怖沐悦,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情五督,我是刑警寧澤藏否,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站概荷,受9級特大地震影響秕岛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜误证,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一继薛、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧愈捅,春花似錦遏考、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至譬巫,卻和暖如春咖楣,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背芦昔。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工诱贿, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人咕缎。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓珠十,卻偏偏與公主長得像,于是被迫代替她去往敵國和親凭豪。 傳聞我的和親對象是個殘疾皇子焙蹭,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355