gpt4 book ai didi

android - XEP-0022 的 SMACK 消息监听器未被调用

转载 作者:行者123 更新时间:2023-11-30 04:32:15 25 4
gpt4 key购买 nike

我无法接收 XMPP 消息,我正在使用以下代码:

    Message mess = new Message() {
@Override
public String toXML() {
return "<message to='user@50.17.86.32' id='message22'><body>Great Mesg</body><x xmlns='jabber:x:event'><offline/><delivered/><composing/></x></message>";
}
};


PacketFilter filter = new MessageTypeFilter(Message.Type.chat);
connection.sendPacket(mess);
connection.addPacketListener(new PacketListener() {
public void processPacket(Packet packet) {
Message message = (Message) packet;
Log.d("Recv", "Message: " + message.toXML());
}
}, filter);

基本上,我正在为 android 使用补丁版本的 SMACK....并尝试使用 xep 0022 获取消息状态。

最佳答案

我认为您的过滤器是导致问题的原因。如果您的传入消息没有定义 type='chat' 属性,那么它们将是 Message.Type.normal 类型。我当然只是猜测,因为您没有发布收到的消息,但您发送的消息不包含类型。

您可能只想创建一个 ChatManagerListener 并将其注册到 ChatManager。然后这将处理这种情况。

注意:您知道 XEP-0022 已经过时了吗?

关于android - XEP-0022 的 SMACK 消息监听器未被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7497022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com