如何使用Smack更改自己的名字?

Mar*_*ade 7 java xmpp smack

您可以使用RosterEntry获取联系人的姓名.但是我如何更改自己的名字,当他们这样做时,我的联系人会看到它

RosterEntry entry = roster.getEntries("myuser");
entry.getName(); // It needs to show my updated name
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Bra*_*ace 2

只要其他用户没有为您设置自定义昵称,我认为Spark 就会显示您的名字和姓氏,您可以通过以下方式进行更改:

VCard me = new VCard();
me.load(conn); // load own VCard
me.setFirstName("John");
me.setLastName("Doe");
me.save(conn);
Run Code Online (Sandbox Code Playgroud)

  • 我将 **ProviderManager.getInstance().addIQProvider("vCard", "vcard-temp", new VCardProvider());** 放在上面的代码之前,它现在正在工作! (2认同)