我正在使用asmack库创建一个Facebook聊天客户端。创建连接,检索联系人,建立聊天,一切都很顺利。但是,当用户离线时,在我的
之前需要一段时间(大约一分钟左右)执行RosterListener中的presenceChanged
方法。当用户上线时,几乎立即执行presenceChanged方法。我正在使用的代码只是一个简单的RosterListener:
roster.addRosterListener(new RosterListener(){
//忽略的事件
public void entriesAdded(收集地址){}
public void entriesDeleted(收集地址){}
public void entriesUpdated(Collection addresses){}
public void presenceChanged(Presence presence){
//从列表中添加/删除联系人 } });
这与Facebook有关吗?还是Smack相关?有没有解决方法呢?
答案 0 :(得分:0)
我在Android中使用asmack使用我自己的openfire服务器并且存在工作正常。我认为它的Facebook有点相关,因为即使在Facebook网站上,有时你会看到一个人在线并开始聊天,它最终会将状态更改为离线状态。 尝试删除或添加一个朋友,看看你的名单是否有效,在方法肠道中显示更新的日志。如果条目立即更新,则意味着这是与Facebook相关的问题。