3
我想在 webview 中显示 pdf 文件。
我尝试使用此代码显示空白页。
文件检索 perfacly 但不在 webView 中显示。
当我运行应用程序时,将 webview 的屏幕截图显示 webview。
显示空白网页视图。像这样....

在此处输入图像描述

private WebView view;
Uri path;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        view = (WebView) findViewById(R.id.webView);
        File file = new File(Environment.getExternalStorageDirectory()
                .getAbsolutePath() + "/Documents/MyPDFFILE.pdf");
        path = Uri.fromFile(file);
        view.setContentDescription("application/pdf");
        view.getSettings().setJavaScriptEnabled(true);
        view.getSettings().setLoadsImagesAutomatically(true);
        view.getSettings().setPluginsEnabled(true);
        view.getSettings().setAppCacheEnabled(true);
        view.loadUrl(path.toString());

        // view.loadUrl("http://grail.cba.csuohio.edu/~matos/notes/cis-493/lecture-notes/Android-Chapter10-WebKit.pdf");
    }
4

1 回答 1

4

因为,AndroidWebView不支持PDF文件功能。并且WebView无法渲染 PDF。

您在评论中发布的 URL 在本机网络浏览器中显示 pdf 文件,因为它使用 Google Docs

如果你想在你的 webview 中显示 pdf 文件,那么使用 Google Docs 传递你的 pdf 文件的 url,它位于服务器上而不是你的本地。

更新: 用于在 webview 中显示位于网络上的 pdf 文件的代码。

WebView webview = (WebView) findViewById(R.id.webview);
webview.getSettings().setJavaScriptEnabled(true); 
String pdf = "http://www.xxxx.com/xxxx/xxxx.pdf";
webview.loadUrl("http://docs.google.com/gview?embedded=true&url=" + pdf);
于 2012-05-09T09:47:16.913 回答