【问题标题】:How can I load PDF files directly from Firebase Storage in Android WebView如何在 Android WebView 中直接从 Firebase 存储加载 PDF 文件
【发布时间】:2017-03-29 18:44:01
【问题描述】:

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

【问题讨论】:

  • 添加您的代码,了解您如何获得downloadURL
  • 查看我下面的代码以供参考

标签: android pdf android-webview firebase-storage


【解决方案1】:

上面写一行

 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);

这对我有用。

快乐编码

【讨论】:

  • 你能详细说明答案吗?为什么它对你有用? :-) 这有助于用户理解您的答案。
  • 我明白你想要什么。所以我做了一些刚刚检查过的事情。
猜你喜欢
  • 2021-01-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-27
  • 1970-01-01
  • 2018-12-25
  • 2021-07-15
  • 1970-01-01
相关资源
最近更新 更多