我所读到的关于Architecture组件的所有文章都是关于使用Room在本地DB中缓存数据的。我经历了无数次的回复,但似乎没有一次能够解决我的问题:“在使用ARCH和的同时,将数据作为外部源。”
当从本地DB检索数据时,它应该从远程源(API)获取数据。目前为止一切都很好。
但是如何将数据推送到外部源呢?
1)当您连接到网络时,我可以想象您只是直接发布/放置到您的API中。(还是不?)然后,当需要将数据缓存到本地DB中时,获取数据。但你不是违反了你唯一的真理之源吗?
2)当你没有连接到一个网络时,你该怎么做?我认为你把你的数据插入到你的本地数据库中。但是,如何将数据与外部源同步呢?(这是必要的,因为不会丢失任何数据。)
如你所见,我不知道如何解决这个问题。我不认为只有我一个人。
提前感谢你的帮助
发布于 2021-10-25 00:52:35
我也有同样的问题。我认为这就是我要做的:如果应用程序连接到网络,我会向您的1号,并直接将其张贴到您的远程源(DB)。
如果您脱机,我将将其插入本地数据库并向其添加一个标志。例如,您可以添加一个列同步并将其设置为false。
一旦您重新连接到internet,您就可以检查您的表是否包含标记为标记的数据行,并将其发送到远程源。
https://stackoverflow.com/questions/48417581
复制