我正在使用MVVM体系结构制作一个android应用。我想从api提取数据并将其插入到room数据库中,然后从我的应用程序的room中获取它。我不知道这是否是实现数据库缓存功能的更好方法。如果还有其他更好的方法,请告诉我。任何帮助将不胜感激。
谢谢
答案 0 :(得分:1)
您的问题确切说明了如何使用Room:
Room允许您使用Rxjava之类的东西在本地存储数据并使用各种不同的线程检索此数据,它还允许您观察LiveData的任何变化,Room绝对是考虑进行缓存的不错的选择< / p>
但是
使用Room是几种不同的缓存实现之一,请考虑发布代码或特定方案以获得更好的答案。编码愉快。
编辑:
使用Room(或任何缓存)的一种常见方法是从数据库加载初始数据,将其显示给用户,执行api调用,更新缓存并从api显示此更新的数据
OR
如果用户没有Internet连接,只需将其在缓存中可用的内容用作数据。同样,所有这些都取决于您的特定情况。
答案 1 :(得分:-1)
使用数据库进行缓存并不便宜,更好地使用共享首选项来缓存数据。
您可以实现用于缓存数据的类,或使用库完整功能来缓存kesho