【发布时间】:2020-07-15 20:42:14
【问题描述】:
我使用本地存储在设备上的 SQLite 数据库开发了一个应用程序。其他应用程序是否能够访问该数据库并读取它,如果可以,我该如何阻止它?我还没有实现任何类型的联系人管理器。
【问题讨论】:
标签: java android database sqlite security
我使用本地存储在设备上的 SQLite 数据库开发了一个应用程序。其他应用程序是否能够访问该数据库并读取它,如果可以,我该如何阻止它?我还没有实现任何类型的联系人管理器。
【问题讨论】:
标签: java android database sqlite security
其他应用能否访问数据库取决于您创建数据库的方式。
Android 应用可以访问特定于应用的存储空间和共享存储空间。如果您已将数据库放置在特定于应用的存储中,那么它对您的应用来说是私有的。
getFilesDir() 方法返回应用特定存储根目录的文件系统路径。
欲了解更多信息:https://developer.android.com/training/data-storage
如果您使用过“sqlite helper”,它会默认将数据库文件放在应用特定的存储中,这样您就安全了:
就像您保存在设备内部存储中的文件一样,Android 将您的数据库存储在您应用的私有文件夹中。您的数据是安全的,因为默认情况下其他应用或用户无法访问此区域。
【讨论】: