android - 通过网络浏览器和 WebView 下载pdf

标签 android pdf android-webview

我正在访问一个包含 .pdf 文档的网站。如果我通过网络浏览器打开该文档,它就会开始下载它。如果我通过 webview 打开它,什么也不会发生。我需要对 webview 应用什么设置才能开始下载?

我已经有了这个。

wvA.setDownloadListener(new DownloadListener()
{
    public void onDownloadStart(String url, String userAgent, String contentDisposition, String mimeType,
                    long size)
    {
        Intent viewIntent = new Intent(Intent.ACTION_VIEW);
        viewIntent.setDataAndType(Uri.parse(url), mimeType);

        try
        {
            startActivity(viewIntent);
        }
        catch (ActivityNotFoundException ex)
        {
        }
    }
});

最佳答案

实现下载监听器来处理任何类型的下载:

webView.loadUrl(uriPath);

webView.setDownloadListener(new DownloadListener() {
    @Override
    public void onDownloadStart(String url, String userAgent,
            String contentDisposition, String mimetype,
            long contentLength) {

        startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
    }
});

关于android - 通过网络浏览器和 WebView 下载pdf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14201176/

相关文章:

android - 扩展了用于 RTMP 流媒体的 MediaCodec 编码器输出缓冲区的客户端所有权

java - pdfBox 之后我无法删除文件

delphi - 如何使用TStreamWriter和TStreamReader读写PDF文件?

Android:从后台服务中获取网页的 'screenshot'?

java - Android SDK,操作栏颜色

android - 当手机锁定/应用程序未打开时,推送通知的振动不起作用

java - 无法让 Android WebView 的 postUrl 与端口一起使用

android - 将 HTML 文件加载到 WebView

android - android GPS位置错误过多

ios - QuickLook 不显示仅以文件名作为标题的 pdf 灰色屏幕