安卓:使用新数据更新recyclerview

3
我的应用程序中有一个recyclerview。第一次打开此片段时,会发出API请求并更新recyclerview。当我再次打开相同的片段时,即使数据已经加载过了,它也会再次发出请求并更新recycleview。因此,为了避免这种情况,我使用了一个静态布尔变量来检查是否已经加载了数据。这样可以避免重复的网络调用,但是假设我正在使用应用程序,而数据已从后端服务器更改,则不会在我的应用程序中反映出来,因为布尔变量在首次加载时将设置为true,并且不会进行任何其他API调用。
那么这种情况的标准方法是什么呢?

4
请检查推送通知,以便让您的设备知道有新数据可用并需要重新建立连接。 - zozelfelfo
@Android Jack:请发布你的代码,介绍一下你所做的事情。 - Jai
@Android:如果预定义数据在此时间后更改,请将时间戳附加到响应中,比较第一个时间戳,然后进行API调用。此外,您是否使用任何网络库? - Hardik Mehta
@Jai:我已经提到了我尝试过的内容。我并不是在寻找现成的代码,而是寻求一个标准流程去遵循。每次都贴上代码会太冗长。 - Rajesh Gosemath
同意@zozelfelfo。如果后端发生更改,则推送通知是获取新数据的正确方式。 - Sachin Saxena
@zozelfelfo:感谢回复。除了推送通知,还有其他方法吗?因为这会让我的简单应用程序变得非常复杂。无论如何,谢谢。 - Rajesh Gosemath
1个回答

5

有人已经提到过,你可以使用推送通知来通知你的应用程序,数据后端发生了一些更改,并且你可以再次调用api来更新数据。你可以查看此链接

除此之外,你还可以始终跟踪上次网络调用的时间。如果时间超过X小时/天,则可以再次调用API。 希望这回答了你的问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接