0
我正在使用快速blox sdk聊天和顯示在線用戶並更新他們的在線/離線狀態。一切工作正常,但在第一次登錄5xxxx7 QBId存在接收按照下面的日誌,快速Blox SDK存在沒有收到作爲在線登錄第一次
D/SMACK: RECV (1): <presence xmlns="jabber:client" from="[email protected]/android_00000000-57d0-4ecf-ffff-ffffef05ac4a" to="[email protected]" id="bQzT2-9587"/>
09-30 16:38:19.944 20513-21578/com.FCK.provider D/NativeCrypto: ssl=0xd86e0d40 sslRead buf=0xd403af98 len=104,timeo=60000
但在我面前聽衆沒有登錄:
rosterListener = new QBRosterListener() {
@Override
public void entriesDeleted(Collection<Integer> userIds) {
log("entriesDeleted: " + userIds);
}
@Override
public void entriesAdded(Collection<Integer> userIds) {
log("entriesAdded: " + userIds);
}
@Override
public void entriesUpdated(Collection<Integer> userIds) {
log("entriesUpdated: " + userIds);
}
@Override
public void presenceChanged(QBPresence presence) {
log("presenceChanged: " + presence);
EventBus.getDefault().post(presence);
if(chatServiceListener != null){
chatServiceListener.presenceChanged(presence);
}
// {type=online, user=5507990, status=null}
}
};
即使我手動獲得通過下面的代碼存在我得到用戶爲脫機即使他是在網上,我可以和他聊天:
QBPresence presence = сhatRoster.getPresence(userID);
if (presence == null) {
log("No user in your roster");
return;
}
if (presence.getType() == QBPresence.Type.online) {
log("User " + userID + " is online");
} else {
log("User " + userID + " is offline");
}