有没有人用过OpenFire发布的Smack库4.0.1版本?监听不到接收到的消息。
RT,服务器端3.9.3,smack4.0.1,创建的chat无法监听到对方发送过来的消息。有知道的兄弟们告诉下。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
RT,服务器端3.9.3,smack4.0.1,创建的chat无法监听到对方发送过来的消息。有知道的兄弟们告诉下。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(6)
这种比较新的问题,在官网的论坛里应该有的, 或者可以在那个上面提问
我也是这个问题 我发现chat.sendMessage可以发送Message和String,我怀疑是String要用packetlistener解析,Message要用messagelistener解析
换了一种方法解决了,能够接收到对方返回的消息了。但是不知道之前哪里有问题。
conn.addPacketListener(new PacketListener() {
@Override
public void processPacket(Packet packet) throws NotConnectedException {
Message message = (Message)packet;
System.out.println(message.getFrom() + ":"+ message.getBody());
}
}, new PacketTypeFilter(Message.class));
of的官网啊。
http://www.igniterealtime.org/downloads/index.jsp
Smack 4.0是在哪里下载的啊?
创建chat后,需要添加监听,创建时传入的那个监听不起作用,不知道为什么 static void addChatListener(XMPPConnection conn) { ChatManager manager = ChatManager.getInstanceFor(conn); manager.addChatListener(new ChatManagerListener() { public void chatCreated(Chat chat, boolean arg1) { chat.addMessageListener(new MessageListener() { public void processMessage(Chat arg0, Message message) { //若是聊天窗口已存在,将消息转往目前窗口 //若是窗口不存在,开新的窗口并注册 System.out.println("收到消息:" + message.getBody()); } }); } }); }