如何在具有网络视图的安德罗德应用程序中下载和显示PDF文件



我正在开发一个安卓应用程序,我在网页视图中显示一个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不是一种选择。 您可以按照以下步骤操作

  1. 下载 pdf 文件。就像普通文件一样。(不使用网络视图(
  2. 保存到存储。
  3. 显示到 UI

下次加载应用程序时,显示文件是否存在,否则再次下载。

还要检查 PDFRenderer。

相关内容

最新更新