在Facebook聊天中获取用户ID而不是用户名

时间:2011-04-08 06:07:27

标签: java xmpp smack vcard facebook-chat

我可以使用Smack整合Facebook聊天。我得到了我的朋友列表,但这都是他们的用户ID,而不是他们的名字。

以下是获取好友列表的代码

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?

有没有办法检索名称而不是用户ID?

2 个答案:

答案 0 :(得分:1)

  1. 您的问题标题似乎与正文所说的相反 - 在Facebook聊天中获取用户ID而非用户名

  2. 请花点时间输入完整的单词和连贯的句子并格式化你的问题 - 它表明你愿意努力询问哪一个使得更有可能会有人愿意回答。它还可以让您更轻松地了解您的要求。在我能够浏览所有的...之前,我必须阅读你的问题5次。并弄清楚你遇到麻烦是什么。

  3. 要回答您的问题 - RosterEntry#getName(),请查看文档会显示的内容。

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

答案 1 :(得分: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());
    }

另见

相关问题