webView.getSettings().setJavaScriptEnabled(true);
要讓其中可以存取 Java 中的功能,就要建立一個可以讓 JavaScript 存取的 Interface
class JsObject { @JavascriptInterface public void alert(String ss) { AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this); builder.setTitle("TestAlert"); builder.setMessage(ss); builder.show(); } }
有 @JavascriptInterface 標記的 Method 才會在JavaScript中被允許使用
然後將這個 class 加入WebView,其中 "myjs" 可以自訂為任意文字
webView.addJavascriptInterface(new JsObject(), "myjs");
最後在網頁中這樣呼叫就可以了
<script> window.myjs.alert("GG"); </script>
沒有留言:
張貼留言