如何在资产文件夹中更新Sqlite DB,而不是复制DB?

时间:2012-05-10 06:43:08

标签: android sqlite assets

我需要处理安装在Android项目资产文件夹中的sqlite数据库。 问题是通常我们在运行时创建资产数据库的副本,并且所有查询都在此副本上完成,但问题是当我清除缓存时它将删除所有更新;所以我需要更新资产文件而不是在运行时创建的副本。

我可以插入更新删除资产sqlite文件吗?

实际上我想保留对数据库的修改,而且我不想在从设置中清除应用程序数据时忽略这些更改。

2 个答案:

答案 0 :(得分:2)

修改.apk构建后的资源(资产,原始,可绘制等)。它们是只读,因此无论如何都会保持原样 - 直到你用更新的东西更新.apk。

答案 1 :(得分:1)

一旦清除了缓存,就无法获取旧记录,一旦生成apk文件,就无法更新资产文件,因为它是 READ-ONLY 。是的,如果您需要有关如何使用已经就绪的数据库的帮助,那么此链接将帮助您确定。

Using your own SQlite Database in android applications

我认为如果你可以从assets文件夹中复制数据库,那么你也可以从sdcard获取它。不太了解它。