2011-04-08 86 views
0

我可以使用Smack集成Facebook聊天功能。我得到了我的朋友列表,但这是他们所有的用户名,而不是他们的名字。在脸书聊天中获取用户名而不是用户名

以下是获取好友列表

public void displayBuddyList() 
{ 

    Roster roster = connection.getRoster(); 
    Collection<RosterEntry> entries = roster.getEntries(); 

    System.out.println("\n\n" + entries.size() + " buddy(ies):"); 

    for(RosterEntry r:entries) 
    { 
     System.out.println(r.getUser()); 
    } 

为Gtalk的相同的代码给出了名称代码。 http://developers.facebook.com上没有提及它。

如何设置我的名册视图使用名称而不是用户ID的?

有没有任何方法来检索名称,而不是用户名的?

+0

HTTP://www.igniterealtime.or克/建立/拍击/文档/ 3.1.0 /的Javadoc /组织/ jivesoftware /拍击/ RosterEntry.html#的getName%28%29 – 2011-04-08 06:18:55

回答

1
  1. 你的问题的标题似乎是身体说的正好相反 - 获取用户的id,而不是用户名在Facebook的聊天

  2. 请花时间打字了完整的单词和连贯句子和格式化你的问题 - 它表明你愿意努力去问问题是什么使得更有可能有人会努力回答。这也使得它更容易理解你在问什么。在我能够浏览所有...的方式之前,我必须阅读你的问题5次。并弄清楚你有什么问题。

  3. 回答你的问题 - RosterEntry#getName()作为一个看看文档将显示。

    for(RosterEntry r:entries) 
    { 
        System.out.println(r.getName()); 
    } 
    
1

你可以尝试以下

// Get the user's roster 
    Roster roster = connection.getRoster(); 

    // Print the number of contacts 
    for(RosterEntry entry:roster.getEntries()){ 
     System.out.println(entry.getName()); 
    } 

请参见