网络视图 Android 中没有 html 无法加载 javascript

Unable to load javascript without html in webview Android

我正在尝试将我的本地 (from assets folder) js 文件加载到 webview 中,但它一直在抛出错误 Uncaught reference, method hello not found。但是当我尝试以相同的方式加载 HTML 文件时。

我的js文件内容:

function hello(p1, p2) {
    console.log(5 + 6);
    return p1 * p2;
};

我正在将此文件加载到片段中

webView = new WebView(getContext());
        webView.getSettings().setJavaScriptEnabled(true);
        webView.getSettings().setAllowFileAccess(true);
        webView.setWebChromeClient(new WebChromeClient() {
            @Override
            public boolean onConsoleMessage(ConsoleMessage consoleMessage) {
                Log.d("test--test--test--resp", consoleMessage.message());
                return super.onConsoleMessage(consoleMessage);
            }
        });
        webView.loadUrl("file:///android_asset/test.js");
        webView.addJavascriptInterface(this, "");

        webView.setWebViewClient(new WebViewClient() {
            @Override
            public void onPageFinished(WebView view, String url) {
                super.onPageFinished(view, url);
                webView.loadUrl("javascript:hello(1,2)");
            }
        });

有人可以指出我遗漏了什么或者我如何在没有 html.

的情况下正确加载 javascript 文件

呵呵,实验了几次就有答案了。在 webview 中,如果想要 run/load JS 文件使用 loadUrl 方法而不使用 html,JS 文件的内容应该在 <script></script> 标签。