【发布时间】:2013-09-24 07:08:13
【问题描述】:
我正在通过 XMPP 协议使用 openfire 服务器使用 smack 创建一个聊天应用程序。我可以与其他用户聊天并且工作良好。我在服务类中创建了连接。 所以当我不在我的应用程序中时,我可以收到通知消息,但是当网络问题、网络变化、网络速度慢等时,我的服务会一次又一次地重新启动。所以我的连接丢失了。并且用户并不总是能够聊天。
所以我解决了连接问题。像
if( service is not runing)
start my service
else
if(connection is NULL or not Connected)
reconnection . so my connection is created
我的服务等级:-
if(connection is NULL or not connected)
reconnect. so my connection is created
else
not connected.
但是现在如果我的服务正在运行并且连接丢失。我打开我的应用程序,创建了一个新连接。此连接由应用程序而非服务创建。所以现在当我不在我的应用程序中时,我没有收到任何有关传入消息的通知,因为传入消息是通过服务连接来的。
现在我参与了。请专家帮助我。我该如何解决?
有没有办法在 openfire 中推送通知?
【问题讨论】:
-
我只能推荐看看各种使用 aSmack 的 Android 开源 XMPP 客户端,以及它们如何处理服务重启、连接更改等。基本上你希望 XMPP 连接实例是由服务管理并侦听连接更改以重新连接。
标签: android xmpp openfire smack