0%

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

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

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

注释掉这两行,OK。