理解这个概念存在问题。
我正在android中创建一个SQLite示例应用程序。目前我使用路径/data/data/packname/databases
来存储数据库。
并且我的资产文件夹中没有任何内容,我想知道如何将数据库从我的内部路径复制到assets
文件夹。
原因: - 我想查看数据库文件onupgrade()
。
我发现很多相关问题,但对答案不满意。
任何建议
答案 0 :(得分:2)
您无法将任何内容复制到APK中的assets
文件夹中,因为APK无法在运行时更改。
相反,即将数据库打包到资产文件夹并将其写入磁盘,您可以使用此项目:https://github.com/jgilfelt/android-sqlite-asset-helper 你在开发时使用它,而不是运行时。
答案 1 :(得分:0)
您可以在运行时将数据库从assets文件夹复制到模拟器或设备。如果要查看更新的数据库,则必须从模拟器中获取数据库
data/data/packagename/databases
我认为无法在资源文件夹中的运行时更改数据。我试图这样做,但没有成功。如果你发现解决方案发布,那么我可以使用它。
答案 2 :(得分:0)
我对您的问题有所了解是您对如何查看SQLite数据库的误解,因此如果您必须查看数据库文件,则无需将数据库保存在资产文件夹中。数据库文件位于数据&gt ; data>您的应用程序包>数据库。 您可以从设备中推送文件并查看它。 因此,如果您必须查看数据库,请follow my answer of this question。 我简要介绍了如何看待数据库。