我目前正在开发一个在设备上维护数据库的应用程序,该数据库可以在以后通过 Retrofit 进行更新,但我正在尝试设计一个解决方案,允许我缓存当前数据库以在出版。
目前是这样的:
- Sqlite数据库手工手工创建
- Sqlite数据库放在app的assets文件夹下
App运行,通过SQLiteOpenHelper/SQLiteAssetHelper将数据库转换为本地数据库
稍后,设备与后端同步,获取 JSON 文件并手动更新新创建的数据库。
我正在尝试用更自动化的东西代替第一步。
有没有办法,比如我可以创建一个调用我的“同步”代码的 Gradle 任务,获取该 JSON,以及某种方法将其转换为 Sqlite 数据库以存储在 Assets 文件夹中?
或者在第 3 步构建本地数据库时直接使用 JSON 的方法?
我宁愿远离任何其他程序,只是为了让项目易于使用/更新。
谢谢。
最佳答案
如果你不需要逐页缓存数据(这意味着你的本地数据库保存来自服务器的所有数据,而你只需要保存当前数据)只需将 JSON 保存为字符串,并在开始时再次解析它以显示离线数据,之后,如果连接可用,则获取新数据。
关于android - 从 json 文件创建/更新 SQLite 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44991900/