为什么从应用程序管理中清除应用程序数据后SQLite数据库会被清除?
我使用 SQLite 创建了一个简单的数据库应用程序,它首先创建数据库,然后允许用户插入和查看插入的记录。但是当我从Android手机的应用程序设置中清除数据时,数据库的数据也被清除。这是为什么?即使用户从“设置”中清除数据,是否有任何方法可以保留数据?
I created a simple database application using SQLite which first creates database and then allow users to insert and view inserted records. But when I clear data from Application Settings of android phone, the data of the database is also cleared. Why is this and is there any way to preserve data even the user clear it from Settings?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
创建数据库时,Android 在 /databases 文件夹中创建一个新的数据库文件。当您删除数据时,Android 会取消在应用程序文件夹中创建的所有文件,包括 /database 文件夹。您应该使用持久数据库,例如 内容提供商
When you create a database, Android create a new database file in the /databases folder. When you delete data, Android cancel every files created in the application folder, included the /database folder. You should use a persistent DataBase like the Content Provider
您可以使用内容提供程序,以便它始终保留数据,还允许您在不同应用程序之间共享数据:
检查此 内容提供商。
另请查看使用内容提供程序的示例。
You can use Content Provider so that it will retain Data at all time , also it will allow you to share your Data between Different Application :
Check this Content Providers.
Also check this Sample for using Content Provider.