aSmack MUC: получить список объединенных комнат после переподключения

Я создаю приложение чата, и у меня возникли проблемы с классом MultiUserChat. Библиотека, которую я использую, загружается из кодов Google.

После потери XMPP-соединения я автоматически покидаю все присоединенные группы.

После переподключения я пытаюсь использовать:

MultiUserChat.getJoinedRooms(xmpp, "1@test.server.com");

так что я могу все мои объединенные комнаты, но я получаю исключение NullPointerException.

У кого-нибудь есть идея, как можно присоединиться ко всем присоединенным комнатам до того, как меня отключат? Я думал о том, чтобы сохранить все мои присоединенные базы данных, а затем снова включил их после выбора. Любая другая идея?

1 ответ

Решение

Камаль прав. getJoinedRooms() возвращается только со списком комнат, если вы подключены и подключены к некоторым экземплярам MUC. Я также рекомендую сохранять JID-файлы MUC в базе данных (или просто в памяти) и присоединяться к комнатам после переподключения. Мы делаем то же самое на GTalkSMS.

Другие вопросы по тегам