本文介绍了XMPP aSmack - 如何获得当前用户状态(离线/在线/距离/等。)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是新来的XMPP / asmack android系统。

I am new to xmpp/asmack in android.

任何人都可以请帮我在获取用户的朋友presence(名单列表)

Can anyone please help me in getting the presence of the user's friends ( roster list)

我使用这样的:

Presence availability = roster.getPresence(user);
Mode userMode = availability.getMode();

还有什么我应该做的就是在我的名单中列出的每个用户的可用性状态。

What else should I do to get the availability status of each user listed in my roster.

推荐答案

只需使用这样的:

Presence availability = roster.getPresence(user);
Mode userMode = availability.getMode();

retrieveState_mode(availability.getMode(),availability.isAvailable());

public static int retrieveState_mode(Mode userMode, boolean isOnline) {
        int userState = 0;
        /** 0 for offline, 1 for online, 2 for away,3 for busy*/
        if(userMode == Mode.dnd) {
            userState = 3;
        } else if (userMode == Mode.away || userMode == Mode.xa) {   
            userState = 2;
        } else if (isOnline) {
            userState = 1;
        }
        return userState;
}

让我知道如果您有任何关于XMPP / asmack任何问题

Let me know if you have any problem regarding xmpp/asmack

这篇关于XMPP aSmack - 如何获得当前用户状态(离线/在线/距离/等。)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-16 12:23