1. Android 中調用JS
假如:H5頁面中有一段如下JS代碼
function h5Test(str){
xxxx...
xxxx...
}
Android中調用方式如下:
步驟一: 啟動支持JS
WebSettings ws = getSettings();
ws.setJavaScriptEnable(True);
步驟二: 加載網頁
webView.loadUrl(url);
步驟三:調用網頁中的js, 注意此處函數名要和 上面js代碼中函數名完全一致
webView.loadUrl("javascript:changeTitle('Android調用js')");
2.JS調用Android
假定點擊H5網頁上的一個按鈕,跳轉到Android代碼中的某個Activity頁面
步驟一:啟動支持JS
WebSettings ws = getSettings();
ws.setJavaScriptEnabled(true);
步驟二:給webView添加JS接口類, 該類封裝了原生的操作. 參數2是JS中的實體類名字,需要和js代碼中名字保持一致
webView.addJavascriptInterface(new JsInterface(),"js2android");
H5頁面見到js2android 就會到JsInterface()類中找相應方法.
步驟三:編寫接口類的內容
public class JsInterface{
@JavascriptInterface //這個注解一定要帶上
public void selectPic(){
Intent intent = new Intent(WebViewActivity.this,GetPicActivity.class);
startActivityForResult(intent,100);
}
}
步驟四:H5頁面中JS對應代碼
function appSelectPic(){
javascript:js2android.selectPic();
}
通過以上4個步驟,就可以做到點擊H5頁面的一個按鈕,跳轉到 對應Activity