簡體   English   中英

如何從xmpp中的用戶獲取所有組(使用smack)

[英]How to get all the groups from a user in xmpp (using smack)

我想從我的聯系人中獲得他們所屬的組。我的意思是,我將有一個聯系人列表,當我單擊每個聯系人時,我將顯示包含他們的組的新列表:

我想要的例子:

往來

  • UserA(onClick)
  • 用戶B
  • 用戶C
  • UserD

UserA組

  • 組別1
  • 第2組
  • Grpup3

是否有可能獲得所有用戶組而不僅僅是“共享”?

該項目使用Smack庫,並獲取我正在做的聯系人列表:(在實現Adapter ...等之前測試結果)。

StringBuilder builder = new StringBuilder();
for(RosterEntry entry : entries)
{

    builder.append(entry);
    builder.append("\n");
    Collection<RosterGroup> rGroup = entry.getGroups();
    builder.append("\t"+rGroup.toString());
    builder.append("\n");

}
Log.d("TEST", builder.toString());

並獲得:

    02-03 14:31:28.421: D/TEST(22476): Luis : luis@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Christopher : christopher@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Diego : diegom@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Fabio : fabio@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): testopen: testopen@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Diana: dianap@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Prova Prova: prova@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Jordi : jordic@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Rubén : rubenr@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): Mikel : mikel@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]
02-03 14:31:28.421: D/TEST(22476): melissak@domain.com: melissak@domain.com [GROUPA]
02-03 14:31:28.421: D/TEST(22476):  [org.jivesoftware.smack.RosterGroup@36a55f6]

我知道大多數用戶都在多個組中,但是我只能看到[GROUPA]但是我不知道如何獲得其他組。

我試圖查看包含[org.jivesoftware.smack.RosterGroup@36a55f6]的內容,但我唯一能實現的是再次獲得相同的名稱,而不是聯系人的分組

有可能得到嗎? 怎么樣?

提前致謝

如果您使用Openfire服務器,請選中管理控制台中的復選框。

用戶/組>組> GroupB(單擊)(根據您的情況)

在“聯系人列表共享”框中,

檢查“啟用聯系人列表組共享”

也許您可以看到其他群組名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM