Android开发 asmack 有时花名册获取不到好友的解决方法

之所以取不到好友列表,或者取到的列表不全,是因为asmack有个检测机制,判断客户端是否已经有好友列表,具体原理没搞清楚,我的解决办法就是直接注释掉这个方法。
org.jivesoftware.smack.Roster.java:
找到


PacketFilter idFilter = new PacketIDFilter(requestPacketId);
connection.addPacketListener(new RosterResultListener(), idFilter);

注释掉这两行,OK。

© 2013, 冰冻鱼. 请尊重作者劳动成果,复制转载保留本站链接! 应用开发笔记