【发布时间】:2014-09-11 07:31:25
【问题描述】:
我是 asmack 的新手。我正在编写一个聊天应用程序,当我通过向他/她发送订阅数据包并接受他来添加用户时,我检查 openFire 服务器 nikename 和其他属性对于新用户是否正常,并且模式都是。
但是当我尝试获取朋友数据时,昵称是空的。
如果我调试代码昵称接收正确但在运行模式下不能?
接收好友的代码:
public static void getContacts(final Context ctx)
{
try
{
try
{
Thread.sleep(1000);
}
catch(Exception ex)
{
}
Roster roster = connection.getRoster();
Collection<RosterEntry> entries = roster.getEntries();
if(globalVars.friends == null)
globalVars.friends = new ArrayList<globalVars.UserList>();
globalVars.friends.clear();
for(RosterEntry entry: entries)
{
String user = entry.getUser();
String username = user.split("@")[0];
Presence presence = roster.getPresence(entry.getUser());
int status = R.drawable.offline;
if(presence.getType().equals(Presence.Type.available))
status = R.drawable.online;
//String fromto = presence.getFrom() + " "+presence.getTo();
globalVars.UserList ul = new UserList(username, status, globalVars.smallImageAddress(ctx, username));
String wathsUp = "";
try
{
if(presence.getStatus() != null)
wathsUp = presence.getStatus();
}
catch(Exception ex)
{
}
ul.setComment(wathsUp);
ul.setFriend(true);
ul.setNikName(entry.getName());
globalVars.friends.add(ul);
}
谁能帮帮我?
【问题讨论】:
标签: android xmpp openfire asmack