我已经以编程方式创建了一个sql数据库,其默认方式是扩展SQLiteOpenHelper并覆盖onCreate
。数据库在设备上成功创建,我可以从中插入和检索数据。
现在我需要将应用程序提交到商店。问题是我需要将数据库移动到资产,以便可以将其加载到包含应用程序的每个设备。我尝试使用avd pull从设备中检索数据库并将其放在资产中,但检索到的数据文件夹为空。每次加载应用程序时都无法重新创建数据库,因为这需要很长时间。
任何帮助将不胜感激。
答案 0 :(得分:1)
按照以下步骤
1)在您的数据库上触发以下查询
Select * from my table;
2)通过上面的查询来检索行结果。
3)使用Gson将检索到的数据转换为Json。
4)创建简单的文本文件并将json保存到该文件中。
5)将此文件放入资产文件夹。
6)现在清除你的数据库,删除Gson库,删除上面的查询。
7)下次启动应用程序时,从资产加载文本文件(包含json响应),使用json库对其进行解析,并将行逐个插入到数据库表中。
8)仅在用户启动应用程序时第一次执行步骤7.
这不是完美的答案,但你可以试试这个。