理解概念有问题。
我正在 android 中创建一个 SQLite 示例应用程序。目前我正在使用路径/data/data/packname/databases
来存储数据库。
我的资产文件夹中没有任何内容,我想知道如何将数据库从我的内部路径复制到assets
文件夹中。
原因:- 我想查看数据库文件onupgrade()
。
我发现很多与此相关的问题,但对答案不满意。
有什么建议么
您不能将任何内容复制到assets
APK 内的文件夹中,因为 APK 无法在运行时更改。
做相反的事情,就是在你的assets文件夹中打包一个数据库并写入磁盘,你可以使用这个项目:https ://github.com/jgilfelt/android-sqlite-asset-helper 你在开发时使用这个,但不是运行时。
您可以在运行时将数据库从资产文件夹复制到模拟器或设备。如果您想查看更新的数据库,您必须从模拟器获取数据库到您的系统
data/data/packagename/databases
我认为不可能在运行时更改资产文件夹中的数据。我试图这样做,但没有成功。如果您找到解决方案,请发布它,以便我可以使用它。
我从您的问题中了解到的是您对如何查看 SQLite 数据库的小误解,因此,如果您必须查看数据库文件,则无需将数据库保存在资产文件夹中。数据库文件位于数据>数据>您的应用程序包>数据库。您可以从您的设备推送文件并查看它。因此,如果您必须查看您的数据库,请按照我对这个问题的回答。我在哪里简要描述了您如何查看数据库。