收听WebView的javascript调用

Mar*_*los 2 android android-webview

我有以下HTML

<div>
    <input type="submit" onClick="anyJSFunction('Test')">
</div>
Run Code Online (Sandbox Code Playgroud)

我在WebView上打开它:

        web = new WebView(this);

        WebSettings settings = web.getSettings();
        settings.setJavaScriptEnabled(true);
        settings.setJavaScriptCanOpenWindowsAutomatically(true);
        settings.setSupportMultipleWindows(false);
        settings.setSupportZoom(false);
        settings.setPluginsEnabled(true);
        settings.setDomStorageEnabled(true);

        web.setVerticalScrollBarEnabled(false);
        web.setHorizontalScrollBarEnabled(false);

        web.loadUrl("file:///sdcard/test.html");
Run Code Online (Sandbox Code Playgroud)

现在我想在调用'anyJSFunction'时听Java,并且能够获得它的参数.

怎么做到呢?

Wir*_*rie 6

WebView的文档中有一个很好的例子.寻找"将JavaScript代码绑定到Android代码".

您将构建一个类作为从JavaScript到Java/Android的接口.您创建一个实例并将其传递给WebView.然后JavaScript代码可以按名称引用类实例.