【发布时间】:2019-03-05 16:39:21
【问题描述】:
我创建了一个带有自定义元素的vcard:
<vCard xmlns='vcard-temp'><NICKNAME>nickname</NICKNAME><elementName xmlns='xmlns:custom'><avatar>elementName_avatar_3.png</avatar></elementName></vCard>
当我问这个vcard时,我的结果是:
<iq xmlns='jabber:client' to='602157@peropenfire101.per.local/3r6td85ng7' from='271087@peropenfire101.per.local' id='jA5pI-33' type='result'><vCard xmlns='vcard-temp'><JABBERID>271087@peropenfire101.per.local/4usgw7j7u</JABBERID><NICKNAME>nickname</NICKNAME></vCard></iq>
如您所见,缺少自定义元素。 这是我的要求:
try {
connection.sendStanzaWithResponseCallback(
new cdcd(from),
new StanzaFilter() {
@Override
public boolean accept(Stanza stanza) {
return false;
}
},
new StanzaListener() {
@Override
public void processStanza(Stanza packet) throws SmackException.NotConnectedException, InterruptedException, SmackException.NotLoggedInException {
}
});
} catch (Exception e) {
e.printStackTrace();
}
private class cdcd extends Stanza{
private final Jid from;
public cdcd(Jid from) {
this.from = from;
}
@Override
public String toString() {
return null;
}
@Override
public CharSequence toXML(String enclosingNamespace) {
return "<iq from=\'"+ from +"\' id='v1' type='get'><vCard xmlns='vcard-temp'/></iq>";
}
}
我不知道如何解决这个问题。
【问题讨论】: