2011-11-01 214 views
1

我正在开发PDF阅读器[电子书阅读器,它可以显示PDF文件],因为android没有任何原生pdf查看器,所以我必须使用第三方pdf查看器。 在这种情况下,我选择了Android的Adobe PDF查看器。 我可以打开存储在我的设备的SD卡中的pdf文件。 现在我想从我的应用程序中打开密码保护的PDF文件。 如果用户想手动打开受密码保护的pdf文件,则必须在打开时提供密码。打开密码保护pdf文件

但我想从我的应用程序中打开这些密码pdf文件没有任何密码提示。 应用程序提供密码,[应用程序知道密码],没有任何密码提示,PDF将打开。

目前如果我想从我的 应用程序中打开任何密码保护的pdf文件,那么会出现密码提示,并且需要密码才能打开它。

我正在使用此代码从SDCARD中存储的pdf文件中打开pdf。

====

File pdfFile = new File(fileLocation); 
if (pdfFile.exists()) 
{ 
    Uri pdfFilepathUri = Uri.fromFile(pdfFile); 
    Intent intent = new Intent(Intent.ACTION_VIEW);  
    intent.setDataAndType(pdfFilepathUri, "application/pdf"); 
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    try 
    { 
     startActivity(intent); 
    } 
    catch (ActivityNotFoundException e) 
    { 
     Toast.makeText(this,"No Application Available to View PDF : "+fileLocation,Toast.LENGTH_LONG).show(); 
    } 
} 
else Toast.makeText(this,"File cannot found : "+fileLocation,Toast.LENGTH_SHORT).show(); 

====

任何人可以请帮助我如何能够提供从应用程序的密码, 以便它可以打开PDF文件自动不提示任何密码窗口。 ?

回答

0

在这种情况下,我有选择的Android

你选择什么是不重要的的Adobe PDF阅读器。这是用户选择重要的内容。

但我想从我的应用程序中打开那些密码pdf文件没有任何密码提示。

希望这不被支持。由于Android缓存用于启动活动的一些Intents,任何应用程序都可以窃取密码。

无论如何,ACTION_VIEW标准对此没有任何规定。

+0

谢谢。回复 ** 1 **我使用Adobe PDF查看器打开PDF文件。 其实我正在开发一个应用程序,其中盗取密码并不是什么大问题,因为它将在本地作为独立应用程序使用。 好的,所以在从应用程序中打开[受密码保护的] pdf文件时,无法避免密码提示问题? ** a **你可以给任何想法,以便我可以通过密码提示,同时打开PDF文件? ** b **据我所知,我们无法在Android应用程序中查看/显示PDF文档,而不是使用第三方PDF阅读器,对吗? –

+1

@redikod:“我使用Adobe PDF查看器打开PDF文件” - 同样,您的用户可能会使用其他的东西。 “你能否给我一些建议,以便我可以在打开pdf文件时通过密码提示来提交?” - AFAIK这是不可能与任何PDF查看器应用程序。任何支持此功能的PDF查看器都是不安全的。欢迎您联系每位PDF阅读器的开发人员,并询问他们是否支持它。 “我们无法在Android应用程序中查看/显示PDF文档,而不是使用第三方PDF阅读器,对吗?” - 正确。 – CommonsWare