我正在尝试使用WebView为Android创建一个网络应用。我的中心很简单,我有一个带按钮的index.html文件:
<button id="connect-button" onclick="connect">Connect</button>
和一个简单的(脚本)元素:
<script>
connect = function () {
alert("Oi");
};
</script>
在Android方面,我有一个活动来在Webview上加载此文件
WebView web;
web = (WebView) findViewById(R.id.webview01);
//ProgressBar related to the xml
progressBar = (ProgressBar) findViewById(R.id.progressBar1);
progressBar.setMax(100);
web.setWebViewClient(new myWebClient());
web.setWebChromeClient(new MyWebViewClient());
web.getSettings().setJavaScriptEnabled(true);
web.getSettings().setLoadWithOverviewMode(true);
web.getSettings().setUseWideViewPort(true);
web.loadUrl("file:///android_asset/index.html");
对于api等级19或以上,一切正常。但对于api级别15到18级的webview无法加载我的简单javascript方法&#34; connect&#34;。
我搜索了很多关于webview for api level bellow 19的问题,但这是一个非常简单的测试。有时某些人会做一些类似于api 15的事情吗?
答案 0 :(得分:0)
<强>解决强>
对于我的情况,问题是对于低于19的API的显然WebView,你必须明确地将任何代码放在&#34; window&#34;对象
所以,当我将我的java脚本更改为
时li
一切正常!
我们有很多类似于这个问题的问题,如果这对您不起作用,请查看: