smack数据包监听器和消息监听器之间的区别

Sub*_*rup 6 android xmpp smack asmack

嗨,我正在创建一个Android应用程序作为XMPP客户端到ejabbered服务器.

但我真的很困惑,因为我看到我可以发送消息作为apacket或消息,我也可以使用PacketListener和收到消息MessageListener.

是什么PacketListenerMessageListener接收消息的好方法之间的区别是什么?使用数据包监听器或消息监听器?

Fal*_*sad 5

MessageListener只监听与消息相关的数据包,而PacketListener监听可能包含消息相关数据包,订阅相关数据包,邀请相关数据包的各种数据包,如果没有应用过滤器,它可以监听服务器发送的所有xml数据包.您还可以添加过滤器以过滤特定数据包.它还用于进程自定义数据包和编写自定义XMPP扩展


vit*_*ter 1

MessageListener是一个仅处理消息的高级接口,PacketListener是匹配和处理自定义数据包以及编写自定义 XMPP 扩展的更复杂的“工具”。如果MessageListener适合您的需求 - 只需使用它们即可。