2015-01-29 4 views
1

내가 Type.headline헤로인 Message.setType() 작동하지 않습니다 유형은 '대화'로 설정되어

에 메시지를 보내려고이 내 코드입니다 :

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='[email protected]' type='chat'> 
    <body>test message</body> 
    <thread>ed108b04-4488-423a-a441-ca95284db6c1</thread> 
</message> 

는 XML 형식 = 대신 형 = '헤드 라인'의 '채팅'.

이유는 무엇이며 어떻게 변경합니까?

답변

5

Chat을 사용하여 메시지를 보내기 때문에.

Connection.sendStanza(Stanza) (이전 Smack 버전에서 sendPacket(Stanza) 사용)을 사용하면 헤드 라인 유형의 메시지를 보낼 수 있습니다.

관련 문제