如何在外部应用程序或webview大小中打开pdf文件大于25mb

时间:2017-04-01 10:47:25

标签: android pdf webview

你好我想在webview或外部应用程序中显示pdf文件。
1)我使用这个网址 https://docs.google.com/gview?embedded=true&url= +pdfurl,但谷歌说"哎呀在预览文档时遇到问题"
2)如果我使用意图打开外部应用程序中的URL,那么他们没有在外部应用程序中加载该文件。
3)如果我使用意图在浏览器中打开网址,那么它开始下载pdf文件。

Intent ii=new Intent(Intent.ACTION_VIEW);
    ii.setDataAndType(Uri.parse(pdf),"text/html");
    try {
        startActivity(ii);
    }catch (ActivityNotFoundException e)
    {
        Toast.makeText(QuranPara.this, "NO Pdf Viewer", Toast.LENGTH_SHORT).show();
    }

这是完整的网址https://docs.google.com/gview?embedded=true&url=www.elibrary.alnoorpk.com/PDF%20Books/Lafzi_aur_bamahawrah_terjma_2015/Para%201%20(Lafzi%20aur%20Bamuhawra%20Tarjma).pdf

检查图片check the error

2 个答案:

答案 0 :(得分:1)

要在WebView中显示,请尝试使用此类

String pdf = "http://www.adobe.com/devnet/acrobat/pdfs/pdf_open_parameters.pdf";
    webview.loadUrl("http://drive.google.com/viewerng/viewer?embedded=true&url=" + pdf);

要在浏览器中显示,请尝试使用此类

Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(pdf_url));
startActivity(browserIntent);

答案 1 :(得分:0)

如果您的文件位于资源中,请先将其复制到外部存储。希望您已经处理了许可流程。

请尝试以下代码离线

/

如果您选择

,请尝试以下 webview 选项
return mec.action(data[1]) if(len(data) > 1) else mec.action() 

但请记住,如果您使用Google文档查看pdf或任何其他文档,Google文档可能会向您显示错误说明

File pdfFile = new File(Environment.getExternalStorageDirectory(),"pdfName.pdf");//Pdf file path if (pdfFile.exists()) //Checking for the file is exist or not { Uri path = Uri.fromFile(pdfFile); Intent objIntent = new Intent(Intent.ACTION_VIEW); objIntent.setDataAndType(path, "application/pdf"); objIntent.setFlags(Intent. FLAG_ACTIVITY_CLEAR_TOP); startActivity(objIntent);//Staring the pdf viewer } else { Toast.makeText(getActivity(), "The file not exists! ", Toast.LENGTH_SHORT).show(); }

因此,谨慎使用google doc查看