3
我正在嘗試使用Smack發送聊天。以下是密碼如何在Smack中設置自定義的Message.Type字符串?
Chat chat = connection.getChatManager().createChat("[email protected]", this);
Message _msg = new Message();
_msg.setBody("Hello this is a test message");
chat.sendMessage(_msg);
此消息在收件人的末尾以type =「chat」顯示。我該如何將此消息類型更改爲自定義字符串,例如「my_custom_string」?
我試過,但它是很容易明白爲什麼以下將無法正常工作
Message.Type _type = Message.Type.fromString("my_custom_string");
_msg.setType(_type);
如果你發現自己曾經在您需要設置一個自定義消息類型的字符串的情況,那麼你應該重新考慮你的設計!這不是XMPP應該如何修改的方式。例如,您可以簡單地在消息元素下添加一個自定義元素(一個包裝中的packetextension)。 – Flow
你是如何解決這個問題的?或者只是擴展消息以添加自定義元素? – Stony
我通過使用主題字段來指定自定義類型來解決它。更通用的解決方案是實施Flow的建議 –