1

在我的聊天应用程序中,当我向发件人发送消息/聊天时,我正在检查互联网连接和 XMPP 连接。如果两者都可用,那么只有我允许用户发送聊天消息。

例如 -

if(connection.IsConnected){

//code to send the message to the sender
}

我正在使用 Openfire 服务器。

我想实现一个功能,当互联网不可用并且用户想要发送消息时,它应该发送(即消息应该添加到队列中)并且应该在互联网再次可用时立即发送给收件人,就像 WhatsApp 一样。

谢谢

4

1 回答 1

1

如果您没有 Internet/XMPP 连接,则在这种情况下您的服务器无关紧要。您只想在客户端中缓冲消息并在重新建立连接后发送它们。

我假设您使用的是 Smack 或 asmack,这意味着您只需在连接上创建一个连接侦听器,以便在重新建立连接连接时发送缓冲消息。

connection.addConnectionListener(new ConnectionListener()
{
      :
    public void reconnectionSuccessful()
    {
        resendFromBuffer();
    }
});
于 2013-03-11T16:54:16.657 回答