0

我正在查看这个页面,它解释了如何在本地 Android 项目(在 Assets 中)使用数据库来填充应用程序标准数据库(由 Android 管理,在 data/...中),如下所示。这样,资产数据库中的所有数据都可以在apk中自由读取,对吧?

如果数据库中有个人信息或证书,这不是存储数据的好方法。将大信息数据存储在资产数据库中并将个人数据存储在 res/xml 或 res/values 中的最佳方式是什么?是否有推荐的方式来存储个人数据?

4

2 回答 2

2

Android 中的 APK 文件默认是全球可读的,因此在其中存储敏感数据并不是一个好主意。在 JellyBean 及更高版本上,应用程序可以被前向锁定(也称为“应用程序加密”),这将确保您的私有资产无法被其他应用程序读取。对于付费应用,这是自动完成的。

最好的方法是不要将数据存储在 APK 中,而是在首次安装时下载。您可以使用 Google Play 扩展文件,这些文件需要身份验证才能下载或提出您自己的解决方案。

您可以以某种加密形式存储它们,然后在第一次运行时解密它们,但是您将遇到密钥管理问题。

于 2012-10-23T03:23:32.913 回答
0

幸运的是,我今天正在读到这个。Android 开发指南建议您使用内部存储来存储私有数据,因为其他应用程序或用户无法访问这些数据。请参阅http://developer.android.com/guide/topics/data/data-storage.html#filesInternal 我希望有所帮助。

于 2012-10-22T17:10:40.793 回答