如何直接从Android WebView中的Firebase存储加载PDF文件

时间:2017-03-29 18:44:01

标签: android pdf android-webview firebase-storage

我正在制作一款Android应用,它具有允许用户上传和查看PDF文件的功能。对于应用程序,Firebase是主干。在应用程序的当前阶段,PDF文件将上载到Firebase存储。但我很难看到它。我从Firebase获取下载URL并在方法中使用它:webView.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url=" + downloadURL)但是WebView向我显示了一个灰色背景,中间写着“无预览可用”。我在浏览器上打开了下载URL,它完美地显示了文件(表明文件存在)。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

只需在上面写一行

 pdf_url=getArguments().getString("pdf_url"); //Ur Firebase Url
    progressBar=view.findViewById(R.id.course_content_progress);

    webView=view.findViewById(R.id.pdfviewr);
    webView.getSettings().setJavaScriptEnabled(true);

    webView.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
        }

        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
        }

    });

    String url="";
    try {
        url=URLEncoder.encode(pdf_url,"UTF-8"); //Url Convert to UTF-8 It important.
    } catch (UnsupportedEncodingException e) {
        e.printStackTrace();
    }
    webView.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url="+url);

这对我有用。

快乐编码