[Android]记录一下整理的使用pdfjs本地查看pdf的方法

ぐ巨炮叔叔 提交于 2020-02-28 12:55:15

感谢:https://blog.csdn.net/j236027367/article/details/78851248

上面的那篇博客已经详细地介绍了如何完整地加入这个功能,甚至还加入了双指缩放!就很厉害。

下面我记录的将会是我以后直接使用的方法:

①创建一个assets的文件夹,并将pdfjs解压到该文件夹下;

    链接:https://pan.baidu.com/s/14qyy6uQIga64uvzmOUptyQ 
    提取码:tzq0

②加入一个webview,并对webview做好配置。

    private void initView() {
        WebSettings settings = webView.getSettings();
        settings.setSavePassword(false);
        settings.setJavaScriptEnabled(true);
        settings.setAllowFileAccessFromFileURLs(true);
        settings.setAllowUniversalAccessFromFileURLs(true);
        settings.setBuiltInZoomControls(true);
        webView.setWebViewClient(new WebViewClient() {
            @Override
            public boolean shouldOverrideUrlLoading(WebView view, String url) {
                view.loadUrl(url);
                return true;
            }
        });
        webView.setWebChromeClient(new WebChromeClient());
    }

③最后就是显示操作了,这里使用一个本地的test.pdf文件。

    private void showWeb() {
        File file = new File(Environment.getExternalStorageDirectory() + "/Monitor/" + "test.pdf");
        if (file.exists()) {
            LogUtils.d("文件的路径是:" + file.getAbsolutePath() + ",文件大小是:" + file.length());

            Uri uri = FileProvider.getUriForFile(this, "包名.fileprovider", file);
            String url = "file:///android_asset/pdfjs/web/viewer.html?file=" + uri;
            LogUtils.d("加载的文件url是:" + url);
            webView.loadUrl(url);
        }
    }

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!