从数据库读取加密的blob文件而不存储它

时间:2016-03-01 21:20:16

标签: android sqlite android-studio privacy

我想将pdf,word,excel(...)文件作为BLOB数据存储到sqlite数据库中,然后使用第三方应用程序将其检索为打开

因为这些文件是保密的,所以我不希望它们在阅读时存储在手机中。 (如果手机被盗,我不希望陌生人有权访问该文件)

我有什么选择?

1 个答案:

答案 0 :(得分:1)

  

我不希望它们在阅读时存储在手机中

从技术上讲,你无法控制它。欢迎第三方应用程序对数据执行任何操作,包括将其保存到文件,通过Internet共享等等。

欢迎您撰写ContentProvider来汇总您的文档以回复openFile()。在您的情况下,由于内容不是文件,因此您需要使用ParcelFileDescriptor管道,以便将数据写入OutputStreamThis sample project演示了基本技术,但我从资产中提供PDF。

但是,如果你遇到大文档的问题,我不会感到惊讶。客户端应用程序可能希望在流中寻找前向和后向,并且管道不会产生可搜索的流。