【发布时间】:2014-10-08 17:34:33
【问题描述】:
我正在一个包含几个按钮的 android Webview 中加载一个网页:
按钮标签
还有一个javascript应该在你点击按钮时触发。
在 4.4 之前的 android 设备上一切正常。但在 4.4 上它什么也不做。
有没有办法解决这个问题并让它在 android 4.4 上也能正常工作?如果有,解决办法是什么?
这里是 webview 的代码
private void init() {
webview = (WebView) getView().findViewById(R.id.webview);
webview.clearCache(true);
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageStarted(WebView view, String url, Bitmap favicon) {
currentUrl = url;
super.onPageStarted(view, url, favicon);
}
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
}
@Override
public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
}
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
return true;
}
@Override
public void onReceivedSslError(WebView view, SslErrorHandler handler, SslError error) {
handler.proceed();
}
});
webview.getSettings().setJavaScriptEnabled(true);
webview.loadUrl(startUrl);
}
这是我点击 web 视图中的按钮时将调用的 javascript
{ window.open('<url which should be opened out of the app>');
self.location = "<webviewredirecturl>"; }
【问题讨论】:
-
4.4 引入了基于 Chromium 的新版 WebView。看看这个关于迁移到它的页面是否有帮助:developer.android.com/guide/webapps/migrating.html
-
我也浏览了文档。它提到了一些关于“在 JavaScript 中处理触摸事件”的内容,但我想知道如果我无权修改页面内容,我该如何让它工作?
-
该页面是否可以在 4.4 本机浏览器中使用?
-
是的,它有效。现在它让我感到困惑。
-
发布您的 webview 代码!
标签: javascript android webview android-4.4-kitkat