我在设备间隔内存的下载目录内有名为 docFolder 的文件夹。该文件夹包含许多不同格式的文件(html,png,jpg等...)。
如何轻松以编程方式加密docFolder ,以便用户无法打开该文件夹。我还需要以编程方式解密 docFolder ,以便我可以使用代码中的文件。
请帮忙。
答案 0 :(得分:0)
您无法加密文件夹,但您可以加密文件
看看
http://www.codejava.net/coding/file-encryption-and-decryption-simple-example
请记住,加密解密会带来电池使用和时间的成本(取决于您的文件大小,甚至可能会滞后于应用)。
您应该只加密非常重要的敏感数据
如果您不希望用户直接访问您的文件,您可以将其存储在 sqlite
中答案 1 :(得分:0)
之前完成了对您的用例的研究,我可以帮助您了解我的结果和发现。
您可以使用对称算法进行加密和解密。这些对称加密算法相对更快,消耗的资源更少。
您可以阅读有关对称密码系统here。
您会发现每种算法都有很多Java代码。
您需要确保用于对称加密的密钥不会存储在本地,因为用户可以反编译APK并访问代码。为此,您可以从Firebase等公共云数据库服务中检索每个用户的密钥。
所以 而不是加密文件夹 ,您可以加密重要文档并将其存储在应用程序的专用路径中。
通常,其他常规应用无法访问您应用的专用路径。 Android不会允许这样做。但是用户可以使用任何文件浏览器浏览它们。
了解Android here中的数据和文件存储,并为您的用例选择最合适的方法。
希望这有用。