我正在尝试将我的本地(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)");
}
});
有人可以指出我缺少的内容或如何在没有javascript
的情况下正确加载html
文件。
答案 0 :(得分:0)
JS
方法运行/加载loadUrl
文件而不使用html,JS
文件的内容应该在
<script></script>
标记。