你好我想在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();
}
答案 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查看