Android 如何在具有web视图的androd应用程序中下载和显示Pdf文件

Android 如何在具有web视图的androd应用程序中下载和显示Pdf文件,android,pdf-viewer,Android,Pdf Viewer,我正在开发一个android应用程序,其中我在web视图中显示一个pdf文件。代码如下 pDialog = new ProgressDialog(Units.this); pDialog.setTitle("Please Wait"); pDialog.setMessage("Loading..."); pDialog.setIndeterminate(false); pDialog.setCancelable(false); webview = (Web

我正在开发一个android应用程序,其中我在web视图中显示一个pdf文件。代码如下

pDialog = new ProgressDialog(Units.this);
    pDialog.setTitle("Please Wait");
    pDialog.setMessage("Loading...");
    pDialog.setIndeterminate(false);
    pDialog.setCancelable(false);
    webview = (WebView) findViewById(R.id.webView1);
    webview.getSettings().setJavaScriptEnabled(true);
    webview.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageStarted(WebView view, String url, Bitmap favicon) {
            super.onPageStarted(view, url, favicon);
            pDialog.show();
        }

        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            pDialog.dismiss();
        }
    });
    String pdf = "http://XX.xxx.xx.xxx/webservice/testbook.pdf";
    webview.loadUrl("http://docs.google.com/gview?embedded=true&url=" + pdf);
}

它工作得很好。但每次调用它时,它都会下载pdf。我希望它应该只下载一次缓存或临时内存(不在外部目录),并在应用程序中查看,直到它被删除

WebView基本上用于在应用程序中加载网页。对于你的问题,我认为WebView不是一个选项。 您可以按照以下步骤操作

  • 下载pdf文件。与普通文件类似。(不使用WebView)
  • 保存到存储
  • 显示到用户界面
  • 下次加载应用程序时,显示文件是否存在,否则再次下载


    还要检查。WebView基本上用于在应用程序中加载网页。对于你的问题,我认为WebView不是一个选项。 您可以按照以下步骤操作

  • 下载pdf文件。与普通文件类似。(不使用WebView)
  • 保存到存储
  • 显示到用户界面
  • 下次加载应用程序时,显示文件是否存在,否则再次下载


    同时检查。

    谢谢@shashidhara。但我不想把它保存在外置硬盘上。我想把那个文件也藏起来。应该可以从我的appUse缓存目录访问它来存储文件。使用getCacheDir()。您可以在这里找到文档,谢谢@shashidhara。但我不想把它保存在外置硬盘上。我想把那个文件也藏起来。应该可以从我的appUse缓存目录访问它来存储文件。使用getCacheDir()。您可以在这里找到文档