我正在尝试使用 Type.headline
发送消息这是我的代码:
public boolean sendText(Chat chat, String text) {
Message message = new Message();
message.setBody(text);
message.setType(Message.Type.headline);
message.setPacketID("id123456");
try {
chat.sendMessage(message);
Log.d("TAG", message.toXML().toString());
return true;
} catch (SmackException.NotConnectedException e) {}
return false;
}
但是发送的XML看起来像这样:
<message id='id123456' to='roee@192.168.0.3' type='chat'>
<body>test message</body>
<thread>ed108b04-4488-423a-a441-ca95284db6c1</thread>
</message>
如您所见,在XML type ='chat'而不是type ='headline'。
为什么会这样,我该如何改变呢?
答案 0 :(得分:6)
因为您使用Chat
发送消息。
只需使用XMPPConnection.sendStanza(Stanza)
(在较旧的Smack版本中使用sendPacket(Stanza)
)即可向您发送标题类型的消息。