【问题标题】:Open password protected pdf file打开受密码保护的 pdf 文件
【发布时间】:2011-11-01 09:37:38
【问题描述】:

我正在开发一个 pdf 阅读器[eBook Reader,可以显示 pdf 文件],因为 android 没有任何原生 pdf 查看器,所以我必须使用第三方 pdf 查看器。 在那种情况下,我选择了适用于 android 的 Adob​​e pdf 查看器。 我可以打开存储在设备 SD 卡中的 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文件而不提示任何密码窗口。 ?

【问题讨论】:

    标签: android


    【解决方案1】:

    在这种情况下,我选择了适用于 Android 的 Adob​​e pdf 查看器

    你选择什么是无关紧要的。重要的是用户的选择。

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

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

    无论如何,ACTION_VIEW 标准中没有任何内容。

    【讨论】:

    • 谢谢。回复 1 我使用 adobe pdf 查看器打开 pdf 文件。实际上,我正在开发一个窃取密码没什么大不了的应用程序,因为它将在本地用作独立应用程序。好的,所以从应用程序打开pdf文件[受密码保护]时,没有办法避免密码提示问题吗? a 你能告诉我任何想法,以便我可以在打开 pdf 文件时通过密码提示吗? b 据我所知,我们无法在 android 应用程序中查看/显示 pdf 文档,而只能使用 3rd 方 pdf 阅读器,对吗?
    • @redikod:“我已经使用 adobe pdf 查看器打开 pdf 文件”——同样,您的用户可能会使用其他东西。 “你能告诉我任何想法,以便我可以在打开 pdf 文件时通过密码提示吗?” -- AFAIK 这对于任何 PDF 查看器应用程序都是不可能的。任何支持此功能的 PDF 查看器都是不安全的。欢迎您联系每个 PDF 查看器的开发人员,询问他们是否支持。 “我们不能在 android 应用程序中查看/显示 pdf 文档,而不是使用 3rd 方 pdf 阅读器,对吗?” -- 正确。