仅在从服务器返回的数据更改后更新缓存数据。

时间:2015-10-07 06:56:27

标签: android caching android-viewpager android-tabs

在Android中,我正在缓存从Rest api调用返回的一些数据。对于缓存数据,我只想在从Rest api调用返回数据后才更新它。

我有两种可能的方式。

  1. 将返回数据与缓存进行比较,然后进行更新。
  2. 从服务器端设置任何标志以更改数据。
  3. 问题:我从服务器获取的类别列表,并根据我在Android应用程序中设置选项卡。但是这些类别不太可能改变。我不希望标签等待加载,直到从服务器收到数据。这就是我使用缓存的原因。

    请为此类案件提供最佳实施。

1 个答案:

答案 0 :(得分:1)

理想情况下,您可能希望使用来自服务器的推送通知,让应用知道选项卡结构已更新并获取新数据。这允许你捎带已经保持打开的套接字。

不太理想的解决方案是缓存最新的响应,然后在显示视图后,检查服务器以查看是否存在更新。下载更新并在更新到达时更改选项卡。

您可以对应用的每个状态更改执行检查端点(针对update_time或其他任何内容),这样只会传输少量数据,除非类别已更改。