无法管理在线名册,openfire

时间:2013-11-08 08:38:51

标签: android xmpp smack asmack

我实际上正在构建一个使用smack和openfire的IM安卓应用程序,但我有一个问题。

事实上,我需要管理我的名册。所以,我使用smack教程给出的代码:

leRoster.addRosterListener(new RosterListener() {

        public void entriesAdded(Collection<String> addresses) {
            for(String x : addresses)
            {
                Log.e("error listener",x);
            }
        }
        public void entriesDeleted(Collection<String> addresses) {}
        public void entriesUpdated(Collection<String> addresses) {

            for(String x : addresses)
            {
                Log.e("error listener",x);
            }

        }
        public void presenceChanged(Presence presence) {
            Log.e("error listener","Presence changed: " + presence.getFrom() + " " + presence);
        }
    });

我使用Log.e(我喜欢红色......)在调试器中显示信息。

我的问题是:当我的名单的用户正在连接时,日志控制台中没有任何内容。这意味着我没有运行那段代码...... 我不知道是否连接了新用户,或者用户是否更改了他的状态,因此我无法刷新屏幕上的联系人(名单)列表。

有什么想法吗?

谢谢:)

1 个答案:

答案 0 :(得分:1)

您是否将订阅模式设置为手动?

leRoster.setSubscriptionMode(Roster.SubscriptionMode.manual);