资产文件夹中的sqlite db

问题描述:

理解概念时存在问题。资产文件夹中的sqlite db

我正在android中创建一个SQLite示例应用程序。目前我正在使用路径/data/data/packname/databases来存储数据库。

并且我的资产文件夹中没有任何内容,我想知道如何将数据库从我的内部路径复制到assets文件夹中。

原因: - 我想查看数据库文件onupgrade()

我发现很多问题相关,但不满意答案。

任何建议

你不能复制任何东西到你的APK里面你assets文件夹,因为的APK不能在运行时改变。

要做到相反,即将数据库打包到资产文件夹中并将其写入磁盘,可以使用此项目:https://github.com/jgilfelt/android-sqlite-asset-helper 您可以在开发时使用它,而不是运行时。

+0

然后我怎么能把我的数据库文件在资产。 – Unknown 2013-03-14 05:02:35

+0

查看我更新的答案。 – wsanville 2013-03-14 05:42:07

您可以在运行时将数据库从资产文件夹复制到模拟器或设备。如果你想看到更新的数据的基础上,你必须从仿真器的数据基地

data/data/packagename/databases 

取到你的系统我认为这是不可能的资产文件夹中运行时更改数据。我试图做到这一点,但没有成功。如果你找到解决方案发布它,以便我可以使用它。

+0

你想要什么,你是给ans还是问这个问题。 – Unknown 2013-03-14 06:52:29

我从你的问题中了解到的是你对如何看SQLite数据库的小误解,所以如果你必须看到你的数据库文件,那么你不需要将你的数据库保存到你的资产文件夹中。数据库文件在数据>数据>您的应用程序包>数据库。 您可以从您的设备推送文件并查看它。 所以,如果你必须看到你的数据库,那么请follow my answer of this question。 我在哪里简要介绍了如何看到你的数据库。