私はこのようなhtmlファイルを持っています
<html>
<head>
This is a test
<script>
function testingConsole() {
console.log("Reached end of Body");
}
</script>
</head>
<body>
<script type="text/javascript">testingConsole();</script>
</body>
</html>
そして私のコードはこのように見えます
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.chart);
webView = (WebView) findViewById(R.id.wvChart);
webView.loadUrl("file:///android_asset/Chart/chart.html");
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webView.setWebChromeClient(new WebChromeClient());
webView.loadUrl("javascript:testingConsole();");
}
htmlファイルが正常に読み込まれ、「これはテストです」というテキストがWebViewに表示されます。そして、スクリプトtestingConsole(); htmlファイルがそれを呼び出しているので、本来あるべきようにそれ自体で実行されます。しかし、コードから呼び出すと、「Uncaught ReferenceError:testingConsole is not defined at null:1」というエラーが発生します。