Android 查看时保护PDF

Android 查看时保护PDF,android,pdf,encryption,Android,Pdf,Encryption,我在外部存储器(SD卡)中有一个加密的PDF文件,我想在阅读时在Android设备上保证它的安全。问题是: 我需要一份普通的复印件来打开它 第三方应用程序可提供共享应用程序的选项(例如Adobe 读者) 1) 第一种方法是用图像来做。该文件通过CipherInputstream解密。此密码输入流将文件读取到android内存文件中(该文件基本上与我们的a路径相同,但仅对android可见)。此解密的MemoryFile可以通过Bitmapfactory生成位图。不幸的是,我无法从内存文件中打

我在外部存储器(SD卡)中有一个加密的PDF文件,我想在阅读时在Android设备上保证它的安全。问题是:

  • 我需要一份普通的复印件来打开它
  • 第三方应用程序可提供共享应用程序的选项(例如Adobe 读者)
1) 第一种方法是用图像来做。该文件通过CipherInputstream解密。此密码输入流将文件读取到android内存文件中(该文件基本上与我们的a路径相同,但仅对android可见)。此解密的MemoryFile可以通过Bitmapfactory生成位图。不幸的是,我无法从内存文件中打开PDF(我找不到这样做的方法…)

2) 第二种方法是制作一个纯拷贝(也在SD上),并在打开后立即删除它。这适用于在视频中播放视频。我将文件解密到SD卡上的另一个位置-我开始在普通文件上播放videoView-我会在播放文件时立即删除它。视频视图工作正常,即使在播放过程中删除了文件。PDF查看器(见Adobe,Polaris)的问题是,当这些查看器浏览文件时,不能删除该文件。将普通文件保存在SD上可以让其他人阅读。。。我还尝试将文件加密到内部directorxy(context.getFilesDir())。我注意到将文件复制到此文件夹会使其损坏。。。。此外,此文件夹不安全,因为根用户可以读取

3) 第三种方法可能与第二种方法相同,将文件解密到SD,然后用另一个查看器读取,希望:

  • 我可以建议应用程序只使用这一个应用程序打开PDF
  • 此查看器不允许在阅读时共享应用程序
  • 文件可以在查看器显示时快速删除,而不会使查看器崩溃

您对满足此要求的PDF查看器有什么想法吗?或者您对阅读时保护PDF有其他想法吗?

最后,您试图创建一个包含太多不在您控制范围内的组件的DRM系统。您不太可能使这样的系统安全。