消息加倍

时间:2018-11-27 04:06:59

标签: android

我正在使用一个Android聊天应用程序,在该应用程序中,我们将消息存储在本地,以避免一次又一次地加载消息,而只是从服务器获取新消息。

我在以下情况下遇到问题:

  • Android应用程序用户向服务器发送消息并失去Internet连接,然后再接收来自服务器的响应。
  • 此消息保留在移动应用程序端的队列中,因为从服务器返回响应时队列会被清除。
  • 当互联网连接恢复时,我们可以看到2次相同的消息(一次是在手机的互联网连接断开之前发送的,而第二次是在互联网连接恢复时发送的)

如何摆脱这种情况?在收到来自服务器的响应后,我们才能清除消息队列,消息是服务器上已接收/存储了消息。

想法?

1 个答案:

答案 0 :(得分:0)

美好的一天!我认为,您调用的服务器方法必须是幂等的。简而言之,对同一消息的第二次调用(第三次等等)必须什么都不做。这是解决此类问题的常用方法。