[置顶] Android基于XMPP Smack Openfire开发IM(4)获取好友列表

上节已经在openfire服务器中建立了组,

[置顶] Android基于XMPP Smack Openfire开发IM(4)获取好友列表_第1张图片

这节继续看怎样获取好友列表,

通过connection对象得到roster,从而可以使用roster.getGroups()得到所有组,使用group.getEntries()得到组中所有的用户

	//获取好友列表
			Roster roster = connection.getRoster();
			Collection<RosterGroup> entriesGroup = roster.getGroups();
			for(RosterGroup group: entriesGroup){
				Collection<RosterEntry> entries = group.getEntries();
				Log.i("---", group.getName());
				for (RosterEntry entry : entries) {
					//Presence presence = roster.getPresence(entry.getUser());
					//Log.i("---", "user: "+entry.getUser());
					Log.i("---", "name: "+entry.getName());
					//Log.i("---", "tyep: "+entry.getType());
					//Log.i("---", "status: "+entry.getStatus());
					//Log.i("---", "groups: "+entry.getGroups());
				}
			}

代码很简单,下面是输出:

[置顶] Android基于XMPP Smack Openfire开发IM(4)获取好友列表_第2张图片


有了组的名称以及组中的好友,填充到BaseExpandableListAdapter中,从而实现类似QQ的好友分组列表,

这些在另一篇博客中有实现,就不在重复,下面是传送门:

Android高仿QQ好友列表:http://blog.csdn.net/vestigge/article/details/8136418




转载请注明出处:http://blog.csdn.net/Vestigge

你可能感兴趣的:(服务器,smack,XMPP,IM)