安卓WebView无法下载

5

我创建了一个包含HTML表单的页面的Web视图,在提交表单(使用POST方法)后,应该下载文件。

我实现了Web视图下载监听器,以便我可以处理下载。

@Override
public void onDownloadStart(String url, String userAgent, String contentDisposition,
                            String mimetype, long contentLength) {
    DownloadManager.Request request = new DownloadManager.Request(
            Uri.parse(url));
    request.allowScanningByMediaScanner();
    request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED);
    request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "DownloadFile.pdf");
    DownloadManager dm = (DownloadManager) getContext().getSystemService(Activity.DOWNLOAD_SERVICE);
    dm.enqueue(request);
}

现在问题是,如果我在页面中使用HTML表单中的POST方法,下载功能无法工作(如果使用GET方法,则可以工作)。
在Chrome移动应用程序中,使用POST方法可以正常工作,但在Android Web视图中无法正常工作。

你有取得write_external_storage权限吗? - Amod Gokhale
尝试为测试目的硬编码已知路径,看看是否会将其写入适当的位置。 - Amod Gokhale
是的,我已经获得了许可,如果我使用GET请求,它会成功下载。 - Parth Gajjar
你好,你找到任何解决方案了吗? - Harry Sharma
1个回答

4

很遗憾,DownloadManager不支持POST方法。请查找相应的问题39491780

您将需要使用替代方式在应用程序中下载文件。


你好,你找到任何解决方案了吗? - Harry Sharma

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接