我正在查看this页面,该页面解释了如何在本地Android项目(在Assets中)中使用数据库来填充应用程序标准数据库(由Android管理,在data / ...中)比如this。这样,资产数据库中的所有数据都可以在apk中自由阅读,对吧?
如果在数据库中有个人信息或证书,这不是存储数据的好方法。 在res / xml或res / values中存储资产数据库和个人数据中的大信息数据的最佳方法是什么?是否有推荐的存储个人数据的方法?
答案 0 :(得分:2)
APK文件默认是世界可读的,因此将灵敏数据存储在那里并不是一个好主意。在JellyBean及更高版本中,该应用程序可以进行前向锁定(也就是“app encryption”),这将确保其他应用程序无法读取您的私有资产。这是针对付费应用自动完成的。
最好的方法是不将数据存储在APK中,而是在首次安装时下载。您可以使用Google Play扩展文件,这些文件需要身份验证才能下载或提供您自己的解决方案。
您可以将它们存储为某种加密形式,然后在首次运行时对其进行解密,但之后您将遇到密钥管理问题。
答案 1 :(得分:0)
幸运的是,我今天正在阅读这篇文章。 Android Dev指南建议您将内部存储用于私人数据,因为其他应用或用户无法访问。见http://developer.android.com/guide/topics/data/data-storage.html#filesInternal 我希望有所帮助。