我正在开发一个聊天应用程序,使用ejabberd saas版作为xmpp服务器。我正在使用smack库的ver-4.2.3版本。为了保持连接活跃,我正在使用ping管理器。以下是我使用的代码:
ReconnectionManager.getInstanceFor(AppController.mXmpptcpConnection).enableAutomaticReconnection();
ServerPingWithAlarmManager.onCreate(context);
ServerPingWithAlarmManager.getInstanceFor(AppController.mXmpptcpConnection).setEnabled(true);
ReconnectionManager.setEnabledPerDefault(true);
//int i = 1;
// PingManager.setDefaultPingInterval(i);
PingManager.getInstanceFor(AppController.mXmpptcpConnection).setPingInterval(300);
我正在使用sticky-service来进行连接,但当我将应用程序保持打开状态(理想状态)15-20分钟后,连接会丢失,因此我正在使用ping管理器来解决此问题。
除了ping管理器之外,还有其他更好的方法吗?