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>

沒有留言:
張貼留言