【问题标题】:How to Open PDF/Docx in WebView如何在 WebView 中打开 PDF/Docx
【发布时间】:2013-05-09 11:10:20
【问题描述】:

我试图让用户单击 pdf/doc 链接并能够直接在 web 视图中看到它。这是我的代码:

webView.setDownloadListener(new DownloadListener(){
    @Override
    public void onDownloadStart(String url, String userAgent, 
            String contentDisposition, String mimetype, long contentLength) {
        webView.loadUrl("https://docs.google.com/gview?embedded=true&url="+url);
    }
});

这会正确打开 Google 查看器(我也尝试过 Google 查看器),但显示的内容是 HTML 源代码,而不是 pdf/doc。有人可以告诉我我做错了什么吗?

【问题讨论】:

    标签: android webview android-webview android-download-manager


    【解决方案1】:

    我不相信 Android WebView 知道如何显示 PDF、docx 或其他“非原生 Web”文档格式。您必须将 URL 传递给另一个应用程序才能查看它,或者自己下载它并将本地文件传递给另一个应用程序。

    【讨论】:

      【解决方案2】:

      使用这行代码: 最终字符串 url = "http://docs.google.com/gview?embedded=true&url=" + myPdfUrl;

      webView.loadUrl(url);

      就是这样

      【讨论】:

      • ..您的问题是在 logcat 中出现空指针错误吗?解决了吗?
      【解决方案3】:

      使用 Google doc 支持显示 doc 或 excel、pdf、txt 或其他格式。

      WebView urlWebView = (WebView)findViewById(R.id.containWebView);
      urlWebView.setWebViewClient(new AppWebViewClients());
      urlWebView.getSettings().setJavaScriptEnabled(true);
      urlWebView.getSettings().setUseWideViewPort(true);
      urlWebView.loadUrl("http://docs.google.com/gview?embedded=true&url="
                      + "YOUR_DOC_URL_HERE"); 
      
      public class AppWebViewClients extends WebViewClient {
      
      
      
          @Override
          public boolean shouldOverrideUrlLoading(WebView view, String url) {
              // TODO Auto-generated method stub
              view.loadUrl(url);
              return true;
          }
      
          @Override
          public void onPageFinished(WebView view, String url) {
              // TODO Auto-generated method stub
              super.onPageFinished(view, url);
      
          }
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2012-07-26
        • 1970-01-01
        • 2020-10-03
        • 2013-02-23
        • 1970-01-01
        • 2018-07-25
        • 2016-05-30
        • 1970-01-01
        相关资源
        最近更新 更多