android中的關鍵代碼:
webview.getSettings().setJavaScriptEnabled(true);
webview.addJavascriptInterface(object,"name");
//把Name="name"的對象添加到object中。object如果是this,就是window.name
webview.loadUrl("file:///android_asset/index.html");//注意這個資源的位置是跟res並列的文件夾下。
js或html中調用android中方法代碼:
或js中 window.name.java中的方法();
android中調用js的function方法:
Callfunction(){
webview.loadUrl("javascript: function ()");
}
需要注意的地方,很多數據類型js中不認識,最好是在android那邊封裝好,提供必要的方法接口。比如傳到js中的list,在js中是沒辦法去得到裏面的元素的。
addJavascriptInterface:addJavascriptInterface方法中要綁定的Java對象及方法要運行在另外的線程中,不能運行在構造他的線程中,也就是說不能運行在當前的activity線程中,就是把這個方法綁定到頁面中,js也可以調用