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

7
您可以使用RosterEntry来获取您联系人的名称。但是,我如何更改自己的姓名并使其出现在我的联系人中?
RosterEntry entry = roster.getEntries("myuser");
entry.getName(); // It needs to show my updated name

提前感谢你。


这个问答提供了答案吗?http://stackoverflow.com/q/4807796/105224 - Andreas Dolk
那么如果没有 XEP-172,我就无法更改我的名称了吗? - Marcellus Andrade
你想要更改你的账户名还是真实姓名? - Andreas Kuckartz
我想要更改真实姓名。 - Marcellus Andrade
1个回答

2
只要其他用户没有为您设置自定义昵称,我认为Spark会显示您的名字和姓氏,并且您可以使用以下方式更改:
VCard me = new VCard();
me.load(conn); // load own VCard
me.setFirstName("John");
me.setLastName("Doe");
me.save(conn);

2
我在上面的代码之前加入了 **ProviderManager.getInstance().addIQProvider("vCard", "vcard-temp", new VCardProvider());**,现在它可以正常工作了! - Marcellus Andrade

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接