我有webview
个,其中包含一个website
。一页上有一个button
供下载excel
文件。但是,当我单击它时,它仅刷新页面,没有下载。甚至我都设置了下载监听器。
但是下载监听程序不会在点击时调用。但是在移动设备上的Google chrome
等其他浏览器上,此功能运行良好。
我已经添加了与之相关的所有权限,并且在堆栈溢出和其他地方看到了很多类似的问题,但一无所获。
所以,任何人都可以解决我的问题。
Webview code:
webview = (WebView)findViewById(R.id.webview);
webSettings = webview.getSettings();
webSettings.setUserAgentString(newAgentString);
webSettings.setJavaScriptEnabled(true);
webSettings.setSupportZoom(true);
webSettings.setBuiltInZoomControls(true);
webSettings.setDisplayZoomControls(false);
webSettings.setSupportMultipleWindows(true);
webSettings.setJavaScriptCanOpenWindowsAutomatically(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
webSettings.setAllowFileAccess(true);
webSettings.setAllowContentAccess(true);
webSettings.setEnableSmoothTransition(true);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
webSettings.setAllowFileAccessFromFileURLs(true);
}
webSettings.setDomStorageEnabled(true);
webSettings.setDatabaseEnabled(true);
webSettings.setPluginState(WebSettings.PluginState.ON);
webview.setHorizontalScrollBarEnabled(true);
webview.setWebViewClient(new MyWebViewClient());
webview.setWebChromeClient(new MyWebChromeClient());
webview.setDownloadListener(new DownloadListener() {
public void onDownloadStart(String url, String userAgent,
String contentDisposition, final String mimeType,
long contentLength) {
Log.d("Erpp", "main onDownlaod : url : " + url);
});
if (Build.VERSION.SDK_INT >= 21) {
CookieManager.getInstance().setAcceptThirdPartyCookies(webview,true);
} else {
CookieManager.getInstance().setAcceptCookie(true);
}